728x90
public class Ex18 {
public static void main(String[] args){
Yoker yoker = new Yoker();
Tablet tablet = new Tablet();
PC pc = new PC();
Audio audio = new Audio();
yoker.buy(tablet);
yoker.buy(pc);
yoker.buy(audio);
yoker.summary();
}
}
class Audio extends Product{
Audio(){
super(50);
}
public String toString(){
return "Audio";
}
}
class Yoker{
int money = 1000;
int bonus = 0;
Product[] item = new Product[10]; //상품 타입
int i =0; // 인덱스 번호
void buy(Product product){
money -= product.price;
bonus += product.bonus;
item[i++] = product; //보관한다.
System.out.println(product+"를 구매.");
}
void summary(){
int sum=0;
String itemList="";
for(int i=0; i<item.length; i++){
if(item[i]==null) break; //break = 속해 있는 문(반복문, Swich문)에서 사용하게 되면 빠져나온다.
sum += item[i].price;
itemList += item[i] + " ";
}
System.out.println(sum+"원어치 구매");
System.out.println(itemList + "를 구매.");
}
}
728x90
'JAVA > 예제' 카테고리의 다른 글
[JAVA] ch07-20. 객체 지향 20 (0) | 2017.08.22 |
---|---|
[JAVA] ch07-19. 객체 지향 19 (0) | 2017.08.22 |
[JAVA] ch07-17. 객체 지향 17 (0) | 2017.08.22 |
[JAVA] ch07-16. 객체 지향 16 (0) | 2017.08.22 |
[JAVA] ch07-15. 객체 지향 15 (0) | 2017.08.22 |
댓글