[상속-9] 연습문제

seratpfk·2022년 8월 1일
0

JAVA

목록 보기
60/96

연습문제1

  • Coffee - Espresso - Americano
  • Espresso espresso = new Espresso("케냐", 50);
    espresso.info(); // 케냐 원두, 물 50ml
  • Americano americano = new Americano("케냐", 300, "아이스");
    americano.info(); // 케냐 원두, 물 300ml, 아이스 아메리카노

Coffee클래스 생성(메인메소드 없음)

	private String origin;
	public Coffee(String origin) {
		super();
		this.origin = origin;
	}
	public void info() {
		System.out.println(origin + "원두");
	}

Espresso클래스 생성(메인메소드 없음)

public class Espresso extends Coffee {
	private int water;
	public Espresso(String origin, int water) {
		super(origin);
		this.water = water;
	}
	@Override
	public void info() {
		super.info();
		System.out.println("물" + water + "ml");
	}
}

Americano클래스 생성(메인메소드 없음)

public class Americano extends Espresso {
	private String type;
	public Americano(String origin, int water, String type) {
		super(origin, water);
		this.type = type;
	}
	@Override
	public void info() {
		super.info();
		System.out.println(type + "아메리카노");
	}
}

Main클래스 생성(메인메소드 설정)

		Espresso espresso = new Espresso("케냐", 50);
		espresso.info(); 
		Americano americano = new Americano("케냐", 300, "아이스");
		americano.info();

출력:
케냐원두
물50ml
케냐원두
물300ml
아이스아메리카노

연습문제2

  • Coffee - Espresso / Americano
  • Espresso espresso = new Espresso("케냐", 50);
    espresso.info(); // 케냐 원두, 물 50ml
  • Americano americano = new Americano(espresso, 2, "아이스");
    americano.info(); // 케냐 원두, 물 300ml, 아이스 아메리카노

Coffee클래스 생성(메인메소드 없음)

	private String origin;
	public Coffee(String origin) {
		super();
		this.origin = origin;
	}
	public void info() {
		System.out.println(origin + "원두");
	}

Espresso클래스 생성(메인메소드 없음)

public class Espresso extends Coffee {
	private int water;
	public Espresso(String origin, int water) {
		super(origin);
		this.water = water;
	}
	@Override
	public void info() {
		super.info();
		System.out.println("물" + water + "ml");
	}
}

Americano클래스 생성(메인메소드 없음)

	private Espresso espresso;
	private int shot;
	private String type;
	public Americano(Espresso espresso, int shot, String type) {
		super();
		this.espresso = espresso;
		this.shot = shot;
		this.type = type;
	}
	public void info() {
		espresso.info();
		System.out.println(shot + "샷");
		System.out.println(type + "아메리카노");
	}

Main클래스 생성(메인메소드 설정)

		Espresso espresso = new Espresso("케냐", 50);
		espresso.info(); 
		Americano americano = new Americano(espresso, 2, "아이스");
		americano.info();

출력:
케냐원두
물50ml
케냐원두
물50ml
2샷
아이스아메리카노

0개의 댓글