다형성 예제 2 (객체 배열 추가) 본문

Programming/Java

다형성 예제 2 (객체 배열 추가)

쩡호 2018. 1. 19. 11:03
package javafuture;


import javafx.scene.Parent;

public class Example {
public static void main(String[] args) {
Buyer b = new Buyer();
b.buy(new TV());
b.buy(new Computer());
b.buy(new Audio());

System.out.println(b.bonusPoint);
System.out.println(b.money);

b.summary();
}
}

class Product {
int price;
int bonusPoint;

Product(int price) {
this.price = price;
bonusPoint = (int) (price / 10);
}

Product() {
}
}

class TV extends Product {
TV() {
super(100);
}

@Override
public String toString() {
return "TV";
}
}

class Computer extends Product {
Computer() {
super(200);
}

@Override
public String toString() {
return "Computer";
}
}

class Audio extends Product {
Audio() {
super(50);
}

@Override
public String toString() {
return "Audio";
}
}

class Buyer {
int money = 1000;
int bonusPoint = 0;
Product[] item = new Product[10];
int i = 0;

void buy(Product p) {
if (this.money < p.price) {
System.out.println("No Money");
return;
}

this.money -= p.price;
this.bonusPoint += bonusPoint;
item[i++] = p;
System.out.println("You bought " + p);
}

void summary() {
int sum = 0;
String itemList = "";

for (int i = 0; i < item.length; i++) {
if (item[i] == null)
break;
sum += item[i].price;
itemList += item[i] + ", ";
}

System.out.println("sum : "+sum);
System.out.println("products : "+itemList);
}
}


'Programming > Java' 카테고리의 다른 글

다형성 예제3 (Vector 추가)  (0) 2018.01.19
polymorphism (다형성) Example  (0) 2018.01.19
피보나치  (1) 2018.01.17
단축키  (0) 2018.01.13
Java의 정석 공부  (0) 2018.01.13
Comments