강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

Grid님의 프로필 이미지
Grid

작성한 질문수

모든 개발자의 실무를 위한 올인원 기본기 클래스

객체 지향의 특성 - 2

캡슐화 질문드립니다.

작성

·

259

1

안녕하세요! 캡슐화 관련하여 제가 이해한 것이 맞는지 궁금해서 질문드립니다. 

캡슐화라는 것이 객체 외부에서 객체의 속성을 직접적으로 바꾸지 못하게하고 해당 객체에서 제공하는 메서드를 통해서만 하도록 하는 것이 맞을까요?

그리고 public 속성의 경우에는 외부에서 접근해도 상관없어서 선언했더라도 객체 외부에서 직접 접근하는 것은 올바른 객체지향이 아닌 것인지 궁금합니다.

답변 1

1

그랩님의 프로필 이미지
그랩
지식공유자

좁은 의미로 캡슐화는 말씀하신 뜻도 맞고 보통 이를 은닉화라고 하기도 합니다 ㅎㅎ

그리고 public 속성은 말 그대로 외부에서 직접 접근해도 괜찮습니다!
다만 상태데이터를 직접 접근하거나 변경하는 경우보다는 메서드를 통해 접근하는 것이 더 관리가 용이해지는 이점이 있습니다 

Grid님의 프로필 이미지
Grid

작성한 질문수

질문하기