Web Developer/JAVA I
9. Class (클래스) 예제 및 연습문제
sayitditto
2023. 1. 10. 16:04
I. 예제
1) ScoreDataTest
public class ScoreDataTest {
public static void main(String[] args) {
// 객체로 만든다. 인스턴스 화 한다. sd1: object, ScoreData의 instance
ScoreData sd1 = new ScoreData();
// 필드에 값 넣기
sd1.subject = "국어";
sd1.score = 85;
sd1.ranking = 7;
// 필드 값 출력하기
System.out.println(sd1.subject);
System.out.println(sd1.score);
System.out.println(sd1.ranking);
sd1.printInfo();
}
}
2) ScoreData
// 설계도, 내가 만드는 새로운 자료형
public class ScoreData {
//속성: 멤버 변수(member variable), 필드 (field)
int score;
String subject;
int rank;
//행위: 메소드 function ()
void printInfo() {
System.out.println("과목명: " + this.subject);
System.out.println("점수: " + this.score);
System.out.println("등수: " + this.rank);
}
}
II. 연습문제
- 학생 Class를 설계하세요.
- 멤버 변수(필드)는 아래를 참조하세요.
- 이름, 수업명, 나이, 전화번호
- 메소드는 아래를 참조하세요.
- 나이가 20세 이상이면 "OOO(이름)은 성인입니다."
- 나이가 20세 미만이면 "OOO(이름)은 미성년자입니다."
- 2개의 객체를 생성하고, 각각의 값 출력과 메소드를 호출해서 출력하세요.
1) StudentTest
public class StudentTest {
public static void main(String[] args) {
Student stu1 = new Student ();
stu1.name = "유재석";
stu1.age = 21;
stu1.className = "java";
stu1.phoneNumber = "01023453223";
Student stu2 = new Student ();
stu2.name = "이효리";
stu2.age = 17;
stu2.className = "java";
stu2.phoneNumber = "01096482734";
// 배열에 넣기
Student[] students = new Student[2];
students[0] = stu1;
students[1] = stu2;
// 출력
for (int i = 0; i < students.length; i++) {
System.out.println(students[i].name);
System.out.println(students[i].age);
System.out.println(students[i].className);
System.out.println(students[i].phoneNumber);
students[i].isAdult();
System.out.println();
}
}
}
public class StudentTest {
public static void main(String[] args) {
//heap 영역에 쌓인다
Student stu1 = new Student ();
//필드 값 세팅
stu1.name = "유재석";
stu1.age = 21;
stu1.className = "java";
stu1.phoneNumber = "01023453223";
System.out.println(stu1.name);
System.out.println(stu1.age);
System.out.println(stu1.className);
System.out.println(stu1.phoneNumber);
stu1.isAdult();
System.out.println();
Student stu2 = new Student ();
stu2.name = "이효리";
stu2.age = 17;
stu2.className = "java";
stu2.phoneNumber = "01096482734";
System.out.println(stu2.name);
System.out.println(stu2.age);
System.out.println(stu2.className);
System.out.println(stu2.phoneNumber);
stu2.isAdult();
}
}
2) Student
public class Student {
// 속성 = field
String name;
int age;
String className;
String phoneNumber;
// 행위 : method
public void isAdult() {
if (age >= 20) {
System.out.println(name + "은 성인입니다.");
} else {
System.out.println(name + "은 미성년자입니다.");
}
}
}