2012-05-18 5 views

답변

2

필드를 캡슐화하지 않고 다른 필드는 비공개 멤버 여야하는 경우 다른 클래스에서 직접 액세스 할 수 있습니다. 액세스 된 항목이 구현에 따라 다르면 구현을 변경하면 참조 된 모든 곳에서 코드를 변경해야합니다.

예를 들어, 날짜를 나타내는 클래스가 있고 년, 월, 일 표현에서 밀리 초 표현으로 전환하는 경우 (실제로 이것을 사람이 읽을 수있는 형식으로 변환하는 방법) 필드가 노출되면 말썽을 일으킨다.

2

낮은 캡슐화 타이트 커플 링을 허용합니다.

캡슐화는 클래스의 구현 세부 사항을 외부 액세스로부터 보호합니다. 외부 액세스는 커플 링입니다. 구현 세부 사항에 대한 연결은 공개 API에 연결하는 것보다 엄격합니다. 작성되고 이해되고 관리되는 코드 부분간에 더 많은 연결이 있습니다.

관련 문제