- [Java] 42. 연관 관계 활용: 학생과 학급 클래스 만들기2024년 04월 24일
- Song hyun
- 작성자
- 2024.04.24.:41
728x90반응형[Java] 연관 관계 활용: 학생과 학급 클래스 만들기
도전 문제 - 학생과 학급은 어떤 관계로 바라볼 수 있을까?
Classroom 객체와 Student 객체는 연관 관계를 형성하고 있습니다.
단 Classroom 안에 Student[ ] 배열을 가지고 있지만 단순히 저장하는 용도 이며
Student 필드를 가지고 있지 않습니다. 이는 직접 적인 포함 관계를 나타내지 않습니다.
1. 각각의 Student, ClassRoom 클래스 만들기
- 이 때, ClassRoom 의 변수로 student[]를 선언한다.
2. ClassRoom 클래스에서 showStudent를 만들어, student[]의 객체들을 출력하는 메서드를 만들기
3. ClassRoom 객체 내부의 Student형 배열에 객체를 넣는 메서드 만들기
(1) Student 클래스
package basic.ch19; public class Student { private String name; private int age; public Student(String name, int age) { this.name = name; this.age = age; } public String getName() { return this.name; } public int getAge() { return this.age; } }
(2) ClassRoom 클래스
package basic.ch19; public class ClassRoom { private String className; private Student[] students;//Student를 담을 수 있는 메모리 공간=배열 private int studentCount; private final int MAX_STUDENT=30; public ClassRoom(String className) { this.className=className; students=new Student[MAX_STUDENT]; this.studentCount=0; } // 학생을 추가하는 메서드 public void addStudent(Student student) { if(studentCount<MAX_STUDENT) { students[studentCount]=student; studentCount++; } else { System.out.println("정원 초과입니다."); } } // 학급의 속한 모든 학생정보를 출력하는 메서드를 만드시오. public void showStudents() { for(int i=0; i<students.length; i++) { if(students[i]!=null) { System.out.println(students[i].getAge()+"살 입니다."); System.out.println(students[i].getName()+" 입니다."); } System.out.println("출력 완료"); break; } } public static void main(String[] args) { } }
728x90반응형'Java > 기본 개념 및 클래스' 카테고리의 다른 글
[Java] 44. 다형성 활용: 스타크래프트 소스 코드 수정하기 (0) 2024.04.24 [Java] 43. 다형성과 캐스팅 (0) 2024.04.24 [Java] 41. 연관 관계와 의존 관계 (0) 2024.04.23 [Java] 40. 메서드 오버로딩, 상속 응용: 유닛에 마린, 질럿, 저글링 상속시키기 (0) 2024.04.23 [Java] 39. 포함 관계 (0) 2024.04.23 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)