我有以下代码:
class Hello {
class Thing {
public int size;
Thing() {
size = 0;
}
}
public static void main(String[] args) {
Thing thing1 = new Thing();
System.out.println("Hello, World!");
}
}
我知道什么Thing
也没做,但是没有它,我的Hello,World程序可以正常编译。只有我定义的类对我不利。
而且它拒绝编译。我到达No enclosing instance of type Hello is accessible."
了创建新事物的路线。我猜是:
有任何想法吗?
static class Thing
将使您的程序正常运行。
实际上,您已经拥有Thing
一个内部类,该类(根据定义)与的特定实例相关联Hello
(即使它从未使用或引用它),这意味着在new Thing();
没有特定Hello
实例的情况下说这是一个错误。范围。
如果改为将其声明为静态类,则它是“嵌套”类,不需要特定的Hello
实例。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句