Beny's Study
05. 캡슐화 본문
목차
- 캡슐화
- 캡슐화의 원칙
- 접근제한자의 종류 (4가지)
캡슐화
■ 추상화를 통해 정리된 데이터들과 기능을 하나로 묶어 관리하는 기법
■ 데이터의 접근 제한을 원칙으로 함
■ 외부에서는 노출된 필드와 메소드만 사용가능
■ 외부에 노출할 필요가 없는 부분은 감춰서 외부에 잘못사용하는 일이 없도록 하기 위함
■ 접급제한자를 이용하여 노출시킬 부분과 감출부분을 정함.
캡슐화의 원칙
■ 클래스의 멤버 변수에 대한 접근권한은 private를원칙으로 한다.
■ 클래스의 멤버변수에 대한 연산처리를 목적으로 하는 함수들을 클래스내부에 작성한다.
■ 멤버함수는 클래스밖에서 접근할수있도록 public로 설정한다.
접근제한자?
■ 외부에서 접근 가능한 멤버와 불가능한 멤버를 구분하는 용도로 사용
■ 외부로부터 데이터를 보호(캡슐화)하기위해서 사용
■ 외부에서 불필요한,내부적으로만 사용되는 부분을 감추기 위해서!
■ 클래스의 캡슐화를 지원
■ 즉, 자바의보안성
접근제한자의 종류
(+) public
■ 외부 클래스가 자유롭게 사용할 수 있는 공개 멤버
(#) protected
■ 같은 패키지 또는 자식 클래스에서 사용할 수 있는 멤버
■ 상속에 관련
(-) private
■ 외부에서 사용할 수 없는 멤버(class 내부에서만 사용할 수 있는 멤버)
■ 본인만 쓸수있음, 안전!
(~) default
■ 접근제한자가 적용되지 않은 멤버로 같은 패키지에 소속된 클래스만 사용 가능한 멤버
■ 선언안하고 하는 것 (급할 때 씀, 그러나 은행같은곳에서 사용하면 큰일, 보안이 약하기때문)
"본 인터넷 사이트 내의 모든 이미지, 문구, 콘텐츠, 내용 등에 대한 저작권은 76beny에게 있습니다.
이를 무단으로 도용, 복사, 전재, 재배포, 2차 변형 등을 할 경우
민, 형사상 법적 조치 등 저작권법에 의거하여 처벌 받을 수 있습니다."
'[JAVA] > 07. 객체지향' 카테고리의 다른 글
07. 필드 (Field) & 필드 접근제한자 (0) | 2022.04.07 |
---|---|
06. 클래스 접근제한자 (0) | 2022.04.07 |
04.객체(생성->할당->사용)와 인스턴스 (0) | 2022.04.06 |
03.클래스 (Class) (0) | 2022.04.06 |
02) 객체 지향 언어 (추상화,통합모델링언어) (0) | 2022.04.06 |