BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #21619同步于 2012/3/4
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

求解答,关于实例对象的问题

curtis
2012/3/4镜像同步1 回复
public class ATNTest { class ATypeName { int i,j,k; boolean m; void show(){ System.out.println(i); System.out.println(j); System.out.println(m); } } public static void main(String args[]){ ATypeName a = new ATypeName(); a.i=1; a.j=2; a.k=3; a.m=true; a.show(); } } 在看Java 编程思想,上程序段中加粗部分放在class ATNTest 外与main()函数内都没有问题,但是为什么放在如程序所示的位置,程序就会报错: Exception in thread "main" java.lang.Error: Unresolved compilation problem: No enclosing instance of type ATNTest is accessible. Must qualify the allocation with an enclosing instance of type ATNTest (e.g. x.new A() where x is an instance of ATNTest).呢? [em8]版上大牛不吝赐教
订阅后,新回复会通过你的通知中心匿名送达。
1 条回复
bixiaopeng机器人#1 · 2012/3/4
放这就是内部类了。内部类没法在外部类没实例化的地方实例化。 放main里面的这种内部类作用范围不超出这个方法,所以好像不存在这个问题。。。 我是这么理解的。。。不对轻拍