Java 기초 클래스 - 연습문제(3)
728x90
기본 환경
JDK : 1.8.0_261 버전 JRE : 1.8.0_261 버전 JAVA VERSION : 8 업데이트 261 Eclipse IDE VERSION : 2020-06버전 |
시나리오
ChildProperty클래스에 보유한 구슬과 구슬 게임을 한 후에 구슬을 잃고 얻음을 나타내는 클래스를 만들어라
다음과 같은 값이 나와야 합니다.
package ex08Class;
public class QuMarbles {
public static void main(String[] args)
{
ChildProperty child1 = new ChildProperty(20);
ChildProperty child2 = new ChildProperty(15);
System.out.println("게임 전 구슬의 보유 개수");
System.out.print("어린이1 : ");
child1.showProperty();
System.out.print("어린이2 : ");
child2.showProperty();
/*1차게임 : 어린이1은 어린이2의 구슬 5개 획득*/
child1.obtainBead(child2, 5);
/*2차게임 : 어린이2가 어린이1의 구슬 9개 획득*/
child2.obtainBead(child1, 9);
System.out.println("\n게임 후 구슬의 보유 개수");
System.out.print("어린이1 : ");
child1.showProperty();
System.out.print("어린이2 : ");
child2.showProperty();
}
정답
package ex08Class;
public class ChildProperty {
int beadvalue;
public ChildProperty(int beadvalue) {
this.beadvalue = beadvalue;
}
public void loseBead(int lose) {
beadvalue -= lose;
}
public void obtainBead(ChildProperty child, int obtain) {
beadvalue += obtain;
child.loseBead(obtain);
}
public void showProperty() {
System.out.println("보유 구슬 개수 " + beadvalue);
}
}
클래스를 매개변수로 보내는 것이 어색할 수 있음니다만 앞에서 클래스 내용을 충분히 숙지했다면 기본 자료형 - 참조 자료형 변수-참조변수로 똑같은 거기 때문에 매개변수로 전달되는 것도 역시 가능해진다는 것을 쉽게 이해하실 수 있으실 겁니다.
'Java > Java_기초부터 _끝까지' 카테고리의 다른 글
Java 기초 package(1) (0) | 2020.11.12 |
---|---|
Java 기초 package(2) (0) | 2020.11.12 |
Java 기초 클래스 - 연습문제(2) (0) | 2020.11.10 |
Java 기초 클래스 - 연습문제(1) (0) | 2020.11.10 |
Java 기초 class(6) - 과일장수 (0) | 2020.11.09 |