-
[JAVA] 접근지정자(Access Specfier)프로그래밍/JAVA 2020. 7. 26. 02:08
자바의 4가지 접근 지정자
접근 지정자(Access Specifier)는 클래스나 멤버들을 다른 클래스에서 접근해도 되는지의 여부를 선언하는 지시어
자바에는 private, protected, public, default 4가지 접근 지정자가 존재
클래스 접근 지정
다른 클래스에서 이 클래스를 활용할 수 있는지 허용 여부를 지정하는 것
public 클래스
클래스 이름 앞에 public으로 선언된 클래스
패키지에 상관없이 다른 어떤 클래스에게도 사용이 허용
// public 클래스 public class Public { .......... }
default 클래스
접근 지정자 없이 클래스를 선언한 경우 default로 접근 지정됨
같은 패키지 내의 클래스들에게만 사용이 허용
// default 클래스 class Default { .......... }
다음과 같이 클래스가 있다고 가정
클래스 A에서 public 클래스 B와 default C에 접근했을 때 결과
클래스 A에서 default로 접근 지정된 C 클래스에 접근할 수 없는 것을 확인
따라서 그 클래스 내의 멤버에도 접근할 수 없음
멤버 접근 지정
private -> default -> protected -> public 순으로 공개의 범위가 넓어짐
멤버에 접근하는 클래스
멤버의 접근 지정자
private
default
protected
public
같은 패키지의 클래스
X
O
O
O
다른 패키지의 클래스
X
X
X
O
접근 가능 영역
클래스 내
동일 패키지 내
동일 패키지와
자식 클래스모든 클래스
출처 : http://www.yes24.com/Product/Goods/61269276
'프로그래밍 > JAVA' 카테고리의 다른 글
[JAVA] 자바 리플렉션(Java Reflection) (0) 2020.07.31 [JAVA] 상속 예제 (0) 2020.07.26 [JAVA] 가비지 컬렉터(Garbage Collector) (0) 2020.07.26 [JAVA] 클래스와 객체 + 생성자 (0) 2020.07.26 [JAVA] JDK 설치 및 환경변수 설정 (0) 2019.12.16