dev_dbdb1114

[JAVA] 액세스 지정자 본문

프로그래밍/JAVA

[JAVA] 액세스 지정자

dbdb1114 2022. 11. 28. 21:05

JAVA의 액세스 지정자는 public/protected/(default)/private이 있다. 

 

public :

클래스에 붙일 때는 한 소스 파일에 하나만 존재할 수 있다. 또한 public 클래스의 이름과 소스 파일의 이름은 반드시 동일해야한다. 

 

protected :

같은 패키지에서는 자유롭게 접근 가능하며, 다른 외부 패키지의 경우 접근이 제한된다. 단, 다른 외부패키지의 경우라도, 만약 protected클래스를 상속받는 자손 클래스의 경우에는 접근 가능하다. 

 

(default):

괄호를 붙인 것에서 느꼈겠지만, 생략가능하다. 즉 아무것도 없는 클래스나 필드, 메서드 등은 모두 default 액세스 지정자에 해당한다. 

default 클래스에 대한 접근은 같은 패키지 내에서만 가능하다. 

 

private:

같은 클래스 내에서만 접근이 가능하다. 

private의 경우 클래스의 액세스 지정자로는 쓸 수 없다. 

조금만 생각해보면, private은 같은 클래스 내에서만 접근이 가능한데 만약에 private 클래스를 만들어둔다면, 어떻게 쓸까.,.? 

 

위와같이 설명하면 좀 헷갈릴 수 있을 것 같다. 조금만 더 확장하여 생각할 수 있다면 좋겠다. 

 

 

'프로그래밍 > JAVA' 카테고리의 다른 글

[JAVA] static이 뭐지  (0) 2022.11.28
[JAVA] 생성자에 관한 이야기1  (0) 2022.11.28
[JAVA] 오버로딩  (0) 2022.11.28
[JAVA] for-each 구문  (0) 2022.11.28
[JAVA] 메소드에서 배열의 참조를 호출  (0) 2022.11.28
Comments