본문 바로가기
☕Java/Java 기본

자바 접근 제한자(Access Modifier) 총정리

by 캔 2021. 12. 28.

Class의 접근 제한자는 public, (default)만 가능하다. 즉, 다른 패키지에서 생성이 가능하거나 같은 클래스 내에서만 생성 가능하다.(protected, private는 사용 불가능)

 

변수와 메서드의 접근 제한자는 public, protected, (default), private가 사용 가능하다.

 

public는 다른 패키지에서도 객체 생성 가능.

(default)는 같은 패키지 내에서 객체 생성 가능.

private은 같은 클래스 내에서만 객체 생성 가능.

 

protected는 같은 패키지 내에서, 그리고 다른 패키지라도 상속할 경우 객체 생성 가능.

 

※ protected 사용 시 주의 사항

package A;

public class SuperClass {
	protected String field = "lifewithcoding";
}
package B;

import A.SuperClass;

public class SubClass extends SuperClass {
	public static void main(String[] args) {
		SubClass subClass = new SubClass();
		System.out.println(subClass.field);
	}
}

protected 변수를 사용하려면 객체를 생성할 때(인스턴스화 할 때), 상속받은 객체(인스턴스), 즉 자식 클래스(subclass)를 사용하여야 한다. 위 코드에서 SuperClass의 field를 사용하기 위해 SubClass 객체인 subClass를 생성하여 접근하였다.

'☕Java > Java 기본' 카테고리의 다른 글

SOLID 원칙  (0) 2022.06.26
JCF(Java Collection Framework) 정리  (0) 2021.12.28
[20210528] AWT GUI Programming 2일차  (0) 2021.05.28
[20210527] AWT 요소를 이용한 GUI 프로그래밍  (0) 2021.05.27
[20210524] Java AWT  (0) 2021.05.24