객체배열/참조변수의 형변환/매개변수의 다형성 을 이용해 풀 것
--------조건-------
조상클래스 Product
자손 클래스 Tv / Computer / Audio
클래스 Buyer (고객)을 이용해
Tv, Computer, Audio를 구입하고,
물품의 총 금액과 어떤 제품을 샀는지 출력하세요
결과값 :
Tv 를 구입하셨습니다
Computer 를 구입하셨습니다
Audio 를 구입하셨습니다
구입하신 물품의 총 금액은 350만원 입니다
구입하신 제품은 Tv, Computer, Audio 입니다
Product 클래스
public class Product { //조상
protected int price; //가격
public Product() {}
public void pay() {
}
}
Tv,Computer,Audio 클래스
public class Audio extends Product{
public Audio() {
super.price = 100;
}
@Override
public String toString() {
return "오디오";
}
}
public class Computer extends Product {
public Computer() {
super.price = 150;
}
@Override
public String toString() {
return "Computer";
}
}
public class Tv extends Product{
public Tv() {
super.price=150;
}
@Override
public String toString() {
return "Tv";
}
}
Buyer 클래스
public class Buyer {
public Buyer() {
super();
won = 10000;
}
Product cart[] = new Product[10];
private int won; //가진 돈
private int sum; //쓴 돈 합계
private int index; //객체 배열 돌리는 용
public void buy (Product p) {
cart[index] = p; //i의 초기값 0
index++; //쓸 때마다 추가됨
won-= p.price;
sum += p.price;
System.out.println(p+"를 구입했습니다");
}
public void all () { //구입 금액과 구입물품을 출력하는 클래스
System.out.println("구입하신 물품의 총 금액은 "+sum+"입니다");
System.out.print("구입하신 제품은 ");
for(int i=0;i<index;i++) {
System.out.print(cart[i]+", ");
}
System.out.println("입니다!");
}
}
메인 클래스
public class emartMain {
public static void main(String[] args) {
Buyer b = new Buyer();
b.buy(new Tv());
b.buy(new Tv());
b.buy(new Computer());
b.buy(new Audio());
b.all();
}
}
결과값
꿀팁
for(int i=0;i<3;i++) {
String a += "좋아해 !!"
}
a를 출력하면 결과값은?
좋아해 !!좋아해 !! 좋아해 !!
a += "좋아해!!" 를 풀어쓰면
a = a+"좋아해!!" 와 같은 뜻
String i = "좋아해";
System.out.println(i+=i); //좋아해좋아해
System.out.println(i+=i); //좋아해좋아해좋아해좋아해
System.out.println(i+=i); //좋아해좋아해좋아해좋아해좋아해좋아해좋아해좋아해
728x90
'혼자서 개발새발' 카테고리의 다른 글
JAVA) 문자열로 되어 있는 숫자를 int로 변환 후, 최댓값 최솟값 구하기 (1) | 2022.10.13 |
---|---|
JAVA) 예외 처리를 이용해 중복 이름 거르기 (0) | 2022.10.13 |
JAVA) 상속+추상클래스+다형성으로 다마고치를 만들어보자! (1) | 2022.10.06 |
JAVA) 상속을 이용해 다마고치 만들기! (0) | 2022.10.05 |
JAVA) 객체 배열(ArrayList XXX)을 이용하여 등록,출력,검색,수정 (1) | 2022.10.05 |