본문 바로가기

development/Codestates

23.01.03 burgerQueen만들기-2

Encapsulation 캡슐화

변수와 메소드를 하나의 단위로 bundling 하는 것
클래스의 인스턴스를 생성해서 클래스 내부의 멤버변수와 메소드에 접근

 

Information hiding

프로그램의 구현된 세부사항을 은닉하여 직접 호출하거나 수정할 수 없게 보호하는 것

 

예제

public class Person {
    private int age;
    private String name; //private로 외부 접근 제한

    public int getAge() {
        return age;
    } //외부 read용 getter

    public void setAge(int age) {
        this.age = age;
    } //외부 write용 setter

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}
public class Main {

    public static void main(String[] args) {
        Person p1 = new Person();
        Person p2 = new Person(); //person p1 인스턴스생성 및 초기화

        p1.setAge(29);
        p1.setName("YOON");
        p2.setId(22);
        p2.setName("KIM"); //setter로 외부에서 write

        System.out.println(p1.getId()); //getter로 외부에서 read 호출
        System.out.println(p1.getName());
        System.out.println();
        System.out.println(p2.getId());
        System.out.println(p2.getName());
    }
}