Chapter7 · master · Youngju-Jang / Javacoursework · GitLab
GitLab.com
gitlab.com
전공은 컴퓨터공학과 국어국문학 두 가지가 있습니다. 컴퓨터공학과 학생은 수학이 필수과목이고, 국어국문학과 학생은 국어가 필수 과목입니다.
각 학생별로 한 개의 전공을 선택합니다.
이번 학기 각 학생의 성적은 다음과 같습니다.
이름 | 학번 | 전공 | 필수과목 | 국어점수 | 수학점수 |
강감찬 | 211213 | 국어국문학과 | 국어 | 95 | 56 |
김유신 | 212330 | 컴퓨터공학과 | 수학 | 95 | 98 |
신사임당 | 201518 | 국어국문학과 | 국어 | 100 | 88 |
이순신 | 202360 | 국어국문학과 | 국어 | 89 | 95 |
홍길동 | 201290 | 컴퓨터공학과 | 수학 | 83 | 56 |
여기 각 학생에게 학점을 부여하는 데 사용하는 정책은 두 가지입니다. 일반 과목이라면 A ~ F로, 필수 과목이라면 S ~ F 로 분류합니다. 점수에 따른 학점 부여기준은
다음과 같습니다
위와 같이 주어진 성적과 각 과목에 대한 학점 정책에 따라 아래와 같이 학점 결과가 나올 수 있도록 구현합니다.
학점의 정책이 추가되는 경우와 과목이 추가되는 경우를 고려하여 객체를 설계하고 학점 정책에 대해서는 인터페이스를 선언하고 각 정책이 해당 인터페이스를 구현하도록 합니다.
Define.java
public class Define {
public static final int KOREAN = 1001; //국어
public static final int MATH = 2001; //수학
public static final int AB_TYPE = 0; // A, B, C
public static final int SAB_TYPE = 1; // S, A, B, c
public static final int PF_TYPE = 2; // P, F
}
점수에 따른 학점의 정책은 여러가지가 있을 수 있습니다. 인터페이스를 먼저 선언하고, 각 정책 클래스가 이를 구현하도록 합니다
School.java
ch8 알고리즘 (0) | 2022.07.19 |
---|---|
ch 6.23. wait()/notify() 에서드를 활용한 동기화 프로그래밍 (0) | 2022.07.18 |
ch 6.22 멀티 Thread 프로그래밍에서의 동기화 (0) | 2022.07.18 |
ch 6.21~ thread 메소드들 (0) | 2022.07.18 |
ch6.20~22 thread 스레드 (0) | 2022.07.15 |
댓글 영역