더북(TheBook)

4.5.5 자바빈


많은 객체 지향 프로그래밍 언어에서 프로퍼티(property)를 지원하며, 해당 프로퍼티를 읽는지 쓰는지에 따라 표현식 object.propertyName을 게터(getter)나 세터(setter) 메서드 호출로 매핑한다. 자바에는 이런 문법이 없지만 프로퍼티가 게터/세터 쌍에 대응하는 규약이 있다. 자바빈(JavaBean)은 인수 없는 생성자, 게터/세터 쌍, 기타 메서드로 구성된 클래스를 의미한다.

게터와 세터는 반드시 정해진 패턴을 따라야 한다.

public Type getProperty()

public void setProperty(Type newValue)


게터나 세터를 생략해서 쓰기 전용이나 읽기 전용 프로퍼티를 만들 수 있다.

프로퍼티 이름은 get/set 다음에 오는 접미어를 소문자로 바꾼 형태다. 예를 들어 getSalary/setSalary 쌍은 salary라는 프로퍼티를 만들어 낸다. 하지만 접미어의 처음 글자가 대문자라면 해당 접미어 그대로 프로퍼티를 만든다. 예를 들어 getURLURL이라는 읽기 전용 프로퍼티를 만들어 낸다.

Note ≣

불 프로퍼티는 게터로 getPropertyName이나 isPropertyName을 사용할 수 있지만, 후자 방식을 주로 쓴다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.