java - 생성자 예제

imjingu·2023년 8월 16일
0

개발공부

목록 보기
379/481

1) 생성자를 통해 4과목의 성적을 입력받도록 하고
Score score = new Score(100, 80, 95, 84);
2) 4과목의 성적을 출력가능한 display() 메서드 작성
score.display();

package chapter20230816;

class Score {
	
	private int kor;
	private int math;
	private int eng;
	private int com;
	
	public Score(int kor, int math, int eng, int com) { // 생성자
		this.kor = kor;
		this.math = math;
		this.eng = eng;
		this.com = com;
	}
	public void display() {
		System.out.println("[Scoure] 국어=" + kor + ", 수학=" + math + ", 영어=" + eng + ", 컴퓨터=" + com);
	}
	
	public void setKor(int kor) {
		if(isScoreLange(kor)) {
			this.kor = kor;
		}
		else {
			printSetError(kor);
		}
	}
	public void setMath(int math) {
		if(isScoreLange(math)) {
			this.math = math;
		}
		else {
			printSetError(math);
		}
	}
	
	private boolean isScoreLange(int score) { // 중복을 제거하고 수정이 편하게 하기위해 메서드 작성
		return score>= 0 && score <= 100;
	}
	private void printSetError(int score) {
		System.out.println(score + " 는 올바른 값(범위 0 ~ 100)이 아닙니다.");
	}
	
}
public class test03 {

	public static void main(String[] args) {
		Score score = new Score(100, 80, 95, 84);
		score.display(); // 외부에서 접근 가능
//		score.kor = -500; // 점수를 저장하는데 잘못된 값(마이너스)가 입력됨
		score.setKor(-500);

	}

}

0개의 댓글