以下类在默认包中定义。
外部.java:
public class Outer {
public class Inner {
}
}
Main.java:
import Outer.Inner;
public class Main {
public static void main(String[] args) {
Outer.Inner inner = new Inner();
}
}
我得到:
Inner cannot be resolved to a type
我确实知道可以从同一个包中实例化内部类。
出了什么问题以及如何解决?
谢谢。
最佳答案
您的内部类应该是静态的(否则,您将需要一个外部实例才能创建内部实例,这是糟糕的设计),并且您应该使用
Outer.Inner inner = new Outer.Inner();
不,你永远不应该将类放入默认包中。
关于java - 从另一个类(但同一个包)创建内部类实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24535962/