Java 按值传递参数 对于一个普通类型的变量来说,这很好理解.比如 int,String类型的变量,可是如果是如果变量是一个类类型的呢?那它的值是什么呢?它的值就是它的引用, 我们不能改变传进来参数的值,这句话是什么意思呢?就是对于传进来的参数,我们不能改变.还是对于普通变量这很好理解. 举个例子: int i=0; public void changeParam(int i) { i=9; } System.out.print(i); 输出会是什么呢?一定是0 .为什么呢?这就是java按值传递参数的特征,我们传进去的是0,而不是一个可以更改的变量 那么对于一个类作为变量呢?我们同样不能改变,上面说过它是一个引用,就是说我们不能改变这个引用,但是我们却可以改变这个引用的对象的值, 看起来有点别扭吧,就是说这个变量引用了类的实例A我们不能在方法体中改变它引用类的实例B,但是我们可以改变实例A的内容. 就是这么一回事!
|