클래스와 객체
목표
클래스 설계 개념 이해
객체 생성과 사용 방법 학습
캡슐화 기본 개념 적용
개념 바로 알기
클래스(Class): 객체를 만들기 위한 설계도
객체(Object): 클래스로부터 생성된 실체
// 클래스 정의
class Person {
String name; // 속성(필드)
int age;
void introduce() { // 메서드
System.out.println("안녕하세요, " + name + "입니다.");
}
}
// 객체 생성 및 사용
Person person = new Person();
person.name = "홍길동";
person.introduce();
Java
복사
직접 구현해보기
Student.java와 StudentTest.java 두 개의 파일을 작성하세요.
Student.java 필수 구현 기능:
1.
Student 클래스 정의
•
속성: name(String), studentId(String), grade(int), gpa(double)
2.
메서드 구현
•
study(): "열심히 공부하고 있습니다!" 출력
•
showInfo(): 모든 학생 정보 출력
•
isHonorStudent(): 학점 3.5 이상이면 true 리턴
StudentTest.java 필수 구현 기능:
1.
객체 생성과 테스트
•
Student 객체 3개 생성
•
각 객체의 정보 설정
•
모든 메서드 테스트
구현 템플릿
Student.java
public class Student {
// TODO: 속성(필드) 선언
String name;
String studentId;
int grade;
double gpa;
// TODO: study 메서드 구현
public void study() {
// 구현 코드 작성
}
// TODO: showInfo 메서드 구현
public void showInfo() {
// 학생 정보 출력 코드 작성
}
// TODO: isHonorStudent 메서드 구현
public boolean isHonorStudent() {
// 학점 3.5 이상 판별 코드 작성
return false;
}
}
Java
복사
StudentTest.java
public class StudentTest {
public static void main(String[] args) {
System.out.println("=== 학생 관리 시스템 ===");
// TODO: Student 객체 3개 생성 및 정보 설정
Student student1 = new Student();
// student1 정보 설정
Student student2 = new Student();
// student2 정보 설정
Student student3 = new Student();
// student3 정보 설정
// TODO: 각 학생 정보 출력 및 메서드 테스트
System.out.println("[학생 1]");
// student1 테스트 코드
System.out.println("[학생 2]");
// student2 테스트 코드
System.out.println("[학생 3]");
// student3 테스트 코드
}
}
Java
복사
실행 예시
=== 학생 관리 시스템 ===
[학생 1]
이름: 김자바
학번: 2024001
학년: 2학년
학점: 3.8
우등생 여부: true
열심히 공부하고 있습니다!
[학생 2]
이름: 이파이썬
학번: 2024002
학년: 1학년
학점: 3.2
우등생 여부: false
열심히 공부하고 있습니다!
Plain Text
복사
