본문 바로가기
Spec UP - Backend/나도코딩의 자바기본편

Quiz. 클래스를 이용하여 햄버거를 자동으로 만드는 프로그램을 작성하시오

by TIS_Ha 2023. 5. 3.
반응형

클래스를 이용하여 햄버거를 자동으로 만드는 프로그램을 작성하시오.

1. 햄버거의 종류는 햄버거, 치즈버거, 새우버거 3가지이다.

2. 각 버거는 각각의 클래스로 생성한다.

3. 버거 이름을 담기 위한 name 변수를 정의한다.

4. 재료 정보를 표시하는 cook() 메소드를 정의한다.

       - 햄버거 : 양상추, 패티, 피클

       - 치즈버거 : 양상추, 패티, 피클, 치즈

       - 새우버거 : 양상추, 패티, 피클, 새우 

5. 공통부분은 상속 및 메소드 오버라이딩으로 처리한다.

6. 모든 클래스는 하나의 파일에 정의한다.

 


package chap_07;

public class _Quiz_07 {
    public static void main(String[] args) {
        HamBurger[] hamBurgers = new HamBurger[3];
        hamBurgers[0] = new HamBurger();
        hamBurgers[1] = new CheeseBurger();
        hamBurgers[2] = new ShrimpBurger();

        System.out.println("주문하신 메뉴를 만듭니다.");
        for (HamBurger hamBurger : hamBurgers){
            hamBurger.cook();
            System.out.println("----------------------");
        }
        System.out.println("메뉴 준비가 완료되었습니다.");
    }
}

class HamBurger {
    public String name;

    public HamBurger(){
        this("햄버거");
    }
    public HamBurger(String name){
        this.name = name;
    }
    public void cook(){
        System.out.println(this.name + "을 만듭니다.");
        System.out.println("빵 사이에 들어가는 재료는 아래와 같습니다.");
        System.out.println("> 양상추");
        System.out.println("+ 패티");
        System.out.println("+ 피클");
    }
}

class CheeseBurger extends HamBurger{
    public CheeseBurger(){
        super("치즈버거");
    }
    public void cook(){
        super.cook();
        System.out.println("+ 치즈");
    }
}

class ShrimpBurger extends HamBurger{
    public ShrimpBurger(){
        super("쉬림프버거");
    }
    public void cook(){
        super.cook();
        System.out.println("+ 새우");
    }
}

 

반응형

'Spec UP - Backend > 나도코딩의 자바기본편' 카테고리의 다른 글

Chap_08.인터페이스(Interface)  (0) 2023.05.10
Chap_08. 추상 클래스(AbstractClass)  (0) 2023.05.10
Chap_07. 열거형(Enum)  (1) 2023.05.03
Chap_07. Final  (0) 2023.05.02
Chap_07. Reference 참조  (0) 2023.05.02

댓글