java

접근 제어 & 접근 지정자

컴공 윤서혜 학습일기 2019. 4. 6. 21:34

접근 제어

- Public = 공용이라는 의미이므로 public을 맴버 앞에 붙이면 누구나 자유롭게 접근할 수 있는 멤버가 된다. 

 

- Private = 전용이라는 의미이므로 private를 붙이면 클래스 안에서만 접근이 가능한 맴버가 된다.

 

- 없음 = 맴버 앞에 접근 지정자가 없으면 디폴트(default)로 동일한 패키지 안에서만 접근이 가능하게 된다. 패키지(Package)란 서로 관련된 클래스들을 하나로 묶은 것이다.

 

- Protected = 키워드를 붙이면 멤버는 부모 클래스와 자식 클래스만이 접근할 수 있다.(상속은 아직 학습하지 않았다.)

 

접근 지정자 클래스 패키지 자식 클래스 전체 세계

public

O O O O
protected O O O X
없음 O O X X
private O X X X

 

 

 

접근 지정자

상속시킬 멤버와 상속시키지 않을 멤버를 지정할 수 있다. 자식 클래스는 부모 클래스의 public 멤버, protected 멤버, 디폴트 멤버(부모 클래스와 자식 클래스가 같은 패키지에 있다면)를 상속받는다. 하지만 부모클래스의 private멤버는 상속되지 않는다.

접근 지정자 동일한 클래스 동일한 패키지의 일반 클래스 동일한 패키지의 자식 클래스 다른 패키지의 자식 클래스 다른 패키지의 일반 클래스
public O O O O O
protected O O O O X
없음 O O O X X
private O X X X X

 

 

cf. 인터페이스는 항상 public으로 상속 받아야 한다!

'java' 카테고리의 다른 글

자바 인수 전달 방법  (0) 2019.04.11
(자바) 관계연산자 VS 논리연산자  (0) 2019.04.08
자바 연산의 원리  (0) 2019.04.07
접근자와 설정자  (0) 2019.04.07
안드로이드(Android),자바(JAVA) 소수점 자르기  (0) 2019.04.06