public class Test {
public static void main(String[] args) {
class A{
public int i=3;
}
Object o = (Object)new A();
A a = (A)o;
System.out.println("i="+a.i);
}
public static void main(String[] args) {
class A{
public int i=3;
}
Object o = (Object)new A();
A a = (A)o;
System.out.println("i="+a.i);
}
}
运行结果:
i=3
类A是main方法内部的一个内部类,执行new A()的时候初始化了一个A的对象,这个对象的属性i的值为3,经过类型转换后,最终a是这个对象的引用,因此,输出结果为i=3.