Java 내부 클래스와 관련된 질문이 있습니다.다른 최상위 클래스와 같은 이름의 Java 내부 클래스
내부 클래스 A를 정의하는 최상위 클래스 Main에서 최상위 클래스 A에 액세스하는 방법이 있습니까? 수업은 패키지에있는 경우
class A { // Outer Class A
{
System.out.println("A outer");
}
}
class B { // Outer Class B
{
System.out.println("B outer");
}
}
public class Main {
class A { // Inner Class A
{
System.out.println("A inner");
}
}
public void newA() {
class A { // Local Class A
{
System.out.println("A local");
}
}
new A();
}
public static void main(String[] args) {
new Main().newA(); // prints "A local"
new Main().new A(); // prints "A inner"
//new A(); // compiler error: No enclosing instance of type Main is Accessible.
new B(); // but this works and prints "B outer"
}
}
패키지간에 클래스 이름을 다시 사용하지 마십시오. 혼동을 일으킬 수 있습니다. –