객체지향 프로그램인 자바의 특성 중 하나는 '정보은닉'이다. 외부에 정보를 노출하지 않으려는 특징이다. 필드(변수, 메소드)를 private로 숨기고 public 을 통해 간접적으로 데이터를 다루는 등 접근제어자를 사용하여 외부에서의 접근 및 수정하는 것을 보호한다.

그리고 '캡슐화'라는 또 다른 자바의 특성을 사용하여 외부에 정보를 노출하지 않으면서 필요한 멤버 변수와 멤버 함수만 오픈하여 사용할 수 있도록 하는 것이다. 이를 위해 private 가 사용된 변수를 사용하기 위한 기능이 getter / setter 이다.

 

 

getter 와 setter 란?

1) getter

  • 목적 : private 를 외부로 꺼내는 메소드
  • 사용법 : 매개변수는 없으며, return 을 사용

 

2) setter

  • 목적 : private 에 값을 넣는 메소드
  • 사용법 : 매개변수를 기입

 

 

간단히 말해,

setter 메서드를 사용하여 데이터의 값을 저장하고, 

    getter 메서드를 통해 해당 데이터 값을 불러와 변수에 담아 출력

 

 

예시

  • 왜 setPrice 내부 if문에 this.price = 1000; 이 적용 안되는지는 ... 몰루ㅎ

 

 

 

+ Recent posts