inblog logo
|
sxias
    자바

    [JAVA] 38. 생성자 오버로딩

    문정준's avatar
    문정준
    Feb 12, 2025
    [JAVA] 38. 생성자 오버로딩
    Contents
    치즈버거 만들기문제 분석코드 작성결과

    치즈버거 만들기

    • 생성자 오버로딩을 이용하여 치즈버거를 만드는 프로그램을 제작하시오.
      • 기본 가격 : 1000원 (고정)
      • 기본 양념
      • 선택적 파라미터 : 200원 추가
     

    문제 분석

    • 상태 : 이름, 가격, 양념
    • Normal Cheeseburger : 이름, 가격, 양념이 고정
      • 생성자를 정의하면서 생성자 내에서 초기화
    • Customized Cheeseburger : 이름 고정, 가격과 양념은 다름
      • 따로 입력 받는 매개변수 필요 - 생성자 오버로딩
     
     

    코드 작성

    package ex04; public class CheeseBurger { String name; int price; String sauce; // 기본 생성자 (치즈버거, 1000, 기본 양념) public CheeseBurger() { this.name = "CheeseBurger"; // 초기화 this.price = 1000; this.sauce = "기본 양념"; } public CheeseBurger(String sauce) { this.name = "CheeseBurger"; this.price = 1000; this.sauce = sauce; } // 파라미터가 있는 생성자 > 생성자 오버로딩 (치즈버거, 1200, 케첩) public CheeseBurger(int price, String sauce) { this.name = "CheeseBurger"; this.price = price; this.sauce = sauce; } public static void main(String[] args) { // 1. 기본 치즈버거 만들기 CheeseBurger cb1 = new CheeseBurger(); // 1-1. 출력 System.out.println("메뉴 : " + cb1.name); System.out.println("가격 : " + cb1.price); System.out.println("소스 : " + cb1.sauce); System.out.println(); // 2. 케첩이 들어간 치즈버거 만들기 (가격 : 200원 추가) CheeseBurger cb2 = new CheeseBurger(1200, "케첩"); // 2-1. 출력 System.out.println("메뉴 : " + cb2.name); System.out.println("가격 : " + cb2.price); System.out.println("소스 : " + cb2.sauce); System.out.println(); // 3. 마요네즈가 들어간 치즈버거 만들기 (가격 : 1000원) CheeseBurger cb3 = new CheeseBurger("마요네즈"); System.out.println("메뉴 : " + cb3.name); System.out.println("가격 : " + cb3.price); System.out.println("소스 : " + cb3.sauce); System.out.println(); } }
     

    결과

    notion image
     
    ✅
    내용 정리
    1. 기본 생성자는 public 클래스명() { } 꼴로 정의
        • 값을 초기화할 수 있음 (this.상태 = 기본값)
    1. 생성자 오버로딩은 기본 생성자에 parameter를 추가
        • parameter의 개수, 타입이 다르면 다른 생성자
     
    Share article
    Contents
    치즈버거 만들기문제 분석코드 작성결과

    Sxias ㆍ a32176740@gmail.com

    RSS·Powered by Inblog