📄 callbyref.java
字号:
package com.iss.base;
public class CallByRef {
private int i ,j;
public CallByRef(){
}
public CallByRef(int i, int j){
this.i = i ;
this.j = j ;
}
public void changeValue(CallByRef cb){
cb.i *= 2 ;
cb.j /= 2 ;
}
public static void main(String[] args) {
// 当你将一个对象传递给一个方法的时候,接受他的参数将会指向的是同一个对象
// 对这个接受参数的操作也就是对原始对象的操作,changeValue中的操作影响了作为参数的对象
// 对象是通过引用调用传递给方法的
// 注意 :
// 当一个对象引用被传递给方法时,引用本身使用按值调用被传递。
// 但是,因为被传递的值指向一个对象,该值的拷贝仍然指向它相应的参数所指向的同一个对象
CallByRef cb = new CallByRef(15,20);
System.out.println(" before changeValue() : i = " + cb.i + " and j = " + cb.j);
cb.changeValue(cb);
System.out.println(" after changeValue() : i = " + cb.i + " and j = " + cb.j);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -