캡슐화를 통해 정보 은닉을 했다고 가정한다면, private 접근 제어자가 포함되어 있는 데이터의 변경이 필요한 경우, getter와 setter 메서드를 사용하여 데이터의 값을 추가하거나 수정할 수 있다.
getter() 메서드👨🏻💻
- getter 메서드는 설정한 변수 값을 읽어오는 데 사용한다. 경우에 따라 객체 외부에서 필드 값을 사용하기에 부적절한 경우가 발생할 수 있는데, 이러한 경우에는 값을 가공한 이후에 외부로 전달하는 역할을 한다.
- 내부의 멤버면수에 저장된 값을 외부로 리턴한다.
- 매개변수는 없고, 리턴값만 있는 메서드로 정의한다.
- 메서드명은 주로 getFieldName() 메서드 형식으로 지정한다.
- FieldName은 해당 멤버변수의 변수명을 사용한다.
- 필드 타입이 boolean일 경우 isFieldName()
setter() 메서드 🧑💻
- setter 메서드는 외부에서 메서드에 접근하여 조건에 맞을 경우 데이터 값을 변경할 수 있도록 한다.
- 메서드명은 주로 setFieldName() 메서드 형식으로 지정한다.
- 외부로부터 데이터를 전달 받아 멤버변수에 저장한다.
- 매개변수만 있고, 리턴값은 없는 메서드로 정의한다.
- 매개변수 타입은 필드의 타입과 동일하다.