학생의 수강과목 학점 출력하기
Subject 과목 클래스
package array;
public class Subject { // 참조 자료형 클래스
private String name;
private int score;
public Subject(String name, int score) {
this.name = name;
this.score = score;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
}
Student 클래스
과목추가 addSubject 메소드
총점이랑 각 과목의 점수 showStudentInfo() 메소드
package array;
import java.util.ArrayList;
public class Student {
int studentID;
String studentName;
ArrayList<Subject> subjectList; // 학생마다 듣는 과목이 다르니까 ArrayList로 관리한다.
public Student(int studentID , String studentName) {
this.studentID = studentID;
this.studentName = studentName;
subjectList = new ArrayList<Subject>();
}
// 한명한명이 어떤 과목을 수강하는지 할때마다 추가한다.
public void addSubject(String name , int score) {
Subject subject = new Subject(name,score); // Subject 객체를 만들고나서 하나하나 추가해준다.
subjectList.add(subject);
}
// 총점이랑 각 과목의 점수
public void showStudentInfo() {
int total = 0;
for(Subject subject : subjectList) {
total += subject.getScore();
System.out.println(studentName + "학생의" + subject.getName() + " 과목의 성적은 " + subject.getScore() +"입니다." );
}
System.out.println(studentName + "학생의 총점은" + total + "점 입니다.");
}
}
학생마다 과목과 점수를 추가한다.
package array;
public class StudentTest {
public static void main(String[] args) {
Student studentLee = new Student(1001,"Lee");
Student studentKim = new Student(1002,"Kim");
studentLee.addSubject("국어", 100);
studentLee.addSubject("수학", 90);
studentKim.addSubject("국어", 100);
studentKim.addSubject("수학", 85);
studentKim.addSubject("수학", 80);
studentLee.showStudentInfo();
System.out.println("===================================");
studentKim.showStudentInfo();
}
}
'JAVA Programming' 카테고리의 다른 글
[33] 상속에서의 super() 상위 부모 생성자 호출 (0) | 2020.07.15 |
---|---|
[32] 상속 , 다형성 이란 ? (0) | 2020.07.15 |
[28] ArrayList 사용하기 (0) | 2020.07.15 |
[27] 다차원 배열 (0) | 2020.07.15 |
[26] 객체 배열 (0) | 2020.07.14 |