我正在开发游戏,这个问题出现了:如果变量设置为类的实例,并且类构造函数设置变量,那么变量最终会是什么?例如:
public class MainClass {
public static MainInterface mainInterface;
public static void main(String[] args) {
mainInterface = new SubClass1();
}
}
public interface MainInterface {
public void method();
}
public class SubClass1 implements MainInterface {
public SubClass1() {
MainClass.mainInterface = new SubClass2();
}
public void method() { }
}
public class SubClass2 implements MainInterface {
public void method() { }
}
那么,在这个例子中,mainInterface是SubClass1还是SubClass2的实例?
答案 0 :(得分:3)
测试并找出答案! :)一个简单的System.out.println(mainInterface.getClass())
将打印出类值。
我相当肯定这个过程是这样的: