范例一:
代码:
class Ref1 {
int temp = 10;
}
public class RefDemo01 {
public static void main(String[] args) {
Ref1 r1 = new Ref1();
r1.temp = 20;
System.out.println(r1.temp);
tell(r1);
System.out.println(r1.temp);
}
public static void tell(Ref1 r2) {
r2.temp = 30;
}
}
内存机制:
.
.
.
范例二:
代码:
public class RefDemo02 {
public static void main(String[] args) {
String str1 = "Hello";
System.out.println(str1);
tell(str1);// string不能更改
System.out.println(str1);
}
public static void tell(String str2) {
str2 = "jike";
}
}
内存机制:
.
.
.
范例三:
代码:
public class RefDemo03 {
public static void main(String[] args) {
Ref2 r1 = new Ref2();
r1.temp = "jike";// r1从指向Hello变到指向jike
System.out.println(r1.temp);
tell(r1);
System.out.println(r1.temp);
}
public static void tell(Ref2 r2) {
r2.temp = "xueyuan";
}
}