正如我刚才的问题Java method invocation order方法调用顺序引用
如果我的代码更改
public class MyClassTest {
private static MyClass m = new MyClass(10);
/**
* @param args
*/
public static void main(String[] args) {
m.initMe(getint());
}
public static int getint() {
m = new MyClass(20);
return 40;
}
}
class MyClass {
private int i;
public MyClass(int i) {
this.i = i;
}
void initMe(int i) {
System.out.println(this.i);
}
}
我的输出为10不是20造成Java是通过按值吗? 所以同样重要的是,方法调用顺序也受到对象引用与运行时类型对齐的影响。
你到底想干什么? –