해당 게시물은 [제대로 파는 자바 (Java) - by 얄코]를 수강한 내용을 바탕으로 작성하였습니다.
- 다른 누군가가 쓰게 할 클래스 : 구성요소 중 일부만 밖으로 공개
- 사용중 오용이나 혼란을 방지
- ⭐ 캡슐화 encapsulation
클래스의 특정 요소를 감추는 이유
- ‘감추는’ 것이 아님 - 코드로 확인 가능
- 라이브러리 예시 확인
- 폰도 부숴서 확인할 수 있듯이…
- 작성자의 의도대로 사용하도록 하기 위함
- 쓰라고 의도한 기능만 공개(IDE의 자동완성 등)하여 혼란 방지
- 내부적으로 수많은 필드들이 사용된다면?
- 제한이 오히려 편의를 제공
- 필드에 부적절한 값이 적용되는 등의 오용 방지
- 다른 클래스와 복합적으로 사용될 경우 혼선 방지
- 기타 다양한 이유
- private : 클래스 내부에서만 접근할 수 있음
- 스마트폰의 부속품들이 기기 안쪽에서만 연결/접근되는것처럼…
Getter와 Setter
- 메뉴 - 코드 - 생성
- 윈도우: alt + inseert
- 맥: command + N
- getter 및 setter 선택
- name과 price 선택