inblog logo
|
sxias
    자바

    [JAVA] 33. Burger 생성자

    문정준's avatar
    문정준
    Feb 11, 2025
    [JAVA] 33. Burger 생성자
    Contents
    버거 판매문제 분석코드 작성결과
    ✅
    생성자 (Constructor)
    객체가 생성될 때 객체를 초기화하는 메서드
    객체를 생성할 때에만 값 설정 가능

    버거 판매

    • Burger 클래스를 선언하고, 인스턴스를 생성함과 동시에 버거의 이름과 가격을 초기화하는 프로그램을 작성하시오.
     

    문제 분석

    • 생성자 : 객체가 생성될 때 객체를 초기화하는 메서드
    • 클래스.필드 = n vs 메서드를 통한 상태 변경
    • 상태를 출력하는 메서드의 작성
     

    코드 작성

    package ex04; class Burger { // 상태 : name, price private String name; private int price; // 생성자 : stack에 저장된 데이터를 heap에 옮기기 : 초기화 public Burger(String n, int p) { name = n; price = p; } public String getName() { return name; } public int getPrice() { return price; } } public class BurgerTest { public static void main(String[] args) { Burger b1 = new Burger("기본버거", 2000); System.out.println("버거 이름 : " + b1.getName()); System.out.println("버거 가격 : " + b1.getPrice()); // System.out.println(b1.name); // System.out.println(b1.price); // b1.name = "기본버거"; // b1.price = 2000; } }
     

    결과

    notion image
     
    ✅
    내용 정리
    1. 생성자 생성 이후 클래스 내부 상태를 직접 변경?
        • 문법 상 오류는 없으나, 객체 지향에 맞지 않는 프로그래밍
        • 이를 막기 위한 접근제어자 private 사용
    1. 클래스 상태는 행위(메서드)로만 변경
    1. 각 행위에는 가능하면 하나의 책임(상태)만을 맡도록 설정
        • 추후 메서드 관리가 용이
    Share article
    Contents
    버거 판매문제 분석코드 작성결과

    Sxias ㆍ a32176740@gmail.com

    RSS·Powered by Inblog