회원가입

접근 제어자 - 사용 (2)

Beany 2024-09-17

접근 제어자 - 사용


클래스 레벨

클래스 레벨의 접근 제어자는 public, default 만 사용할 수 있다.
private, protected 는 사용할 수 없다.

public 클래스는 반드시 파일명과 이름이 같아야 한다.
하나의 자바 파일에 public 클래스는 하나만 등장할 수 있다.
하나의 자바 파일에 default 클래스 접근 제어자를 사용하는 클래스는 무한정 만들 수 있다.

 

PublicClass

package access.a;

public class PublicClass {
    public static void main(String[] args) {
        PublicClass publicClass = new PublicClass();
        DefaultClass1 defaultClass1 = new DefaultClass1();
        DefaultClass2 defaultClass2 = new DefaultClass2();
    }
}


class DefaultClass1 {
}


class DefaultClass2 {
}

 

PublicClassInnerMain

package access.a;

public class PublicClassInnerMain {
    public static void main(String[] args) {
        PublicClass publicClass = new PublicClass();
        DefaultClass1 defaultClass1 = new DefaultClass1();
        DefaultClass2 defaultClass2 = new DefaultClass2();
    }
}

 

 

PublicClassOuterMain

package access.b;

//import access.a.DefaultClass1;
//import access.a.DefaultClass2;
import access.a.PublicClass;

public class PublicClassOuterMain {
    public static void main(String[] args) {
        PublicClass publicClassOuter = new PublicClass();
        // DefaultClass1 defaultClass1 = new DefaultClass1();
        // DefaultClass2 defaultClass2 = new DefaultClass2();
    }
}
java: access.a.DefaultClass1 is not public in access.a; cannot be accessed from outside package

default 여서 다른 패키지에 접근을 하지 못하기 때문에 컴파일 에러가 나옵니다.

0 0
JAVA
이 공간은 개인 공부를 통해 얻은 정보를 체계적으로 정리하고 공유하는 곳입니다. 학습한 내용, 발견한 지식, 그리고 문제 해결 방법 등을 기록하여 나만의 학습 자료를 구축하고, 필요할 때 쉽게 참고할 수 있는 유용한 자원으로 활용할 수 있도록 합니다.
Yesterday: 456
Today: 229