java 考察引用的一个例子

class ValHold{

public int i = 10;

}

public class ObParm{

public static void main(String argv[]){

ObParm o = new ObParm();

o.amethod();

}

public void amethod(){

int i = 99;

ValHold v = new ValHold();

v.i=30;

another(v,i);

System.out.println(v.i);

}

public void another(ValHold v, int i){

i=0;

v.i = 15;

ValHold vh = new ValHold();

v = vh;

System.out.println(v.i+ " "+i);

}

}

这题其实就是考察java中引用的例子,其实学过c或者c++的程序员来说,java中的引用可以看出指针的封装,或者简单的可以看出是指针,结果就很容易出来了。

很多人回答的结果是:

10 0

10

或者

10 0

30

都是没有深刻理解导致的结果。

正确答案是

10 0

15

经验分享 程序员 微信小程序 职场和发展