编译执行B.java
理解一下下面两个类的结构
类在实例化的时候只关心构造方法需要的东西
其他方法在实例调用的时候才确定//B.javaclass A{
public A(){} public void init(int i)
{
B b=new B();
b.init();
System.out.println(i);
}
}public class B{
private static A[] myA;
private static int i=1;
public void init(){
System.out.println("Call B "+(i++));
}
public static void main(String[] args)
{
myA= new A[3];
for(int i = 0;i < 3; i++)
{
myA[i] = new A();
myA[i].init(i);
}
}
}
理解一下下面两个类的结构
类在实例化的时候只关心构造方法需要的东西
其他方法在实例调用的时候才确定//B.javaclass A{
public A(){} public void init(int i)
{
B b=new B();
b.init();
System.out.println(i);
}
}public class B{
private static A[] myA;
private static int i=1;
public void init(){
System.out.println("Call B "+(i++));
}
public static void main(String[] args)
{
myA= new A[3];
for(int i = 0;i < 3; i++)
{
myA[i] = new A();
myA[i].init(i);
}
}
}
编译器就告诉我类2的Symbol不可识别
编译了类2
编译器就告诉我类的Symbol不可识别
郁闷啊!
我编译一下类1
编译器就告诉我类2的Symbol不可识别
编译了类2
编译器就告诉我类的Symbol不可识别
郁闷啊!