别名现象
来源:互联网 发布:三坐标测量机编程 编辑:程序博客网 时间:2024/05/01 06:05
//: operators/PassObject.java
// Passing objects to methods may not be
// what you're used to.
import static net.mindview.util.Print.*;
class Letter {
char c;
}
public class PassObject {
static void f(Letter y) {
y.c = 'z';
}
public static void main(String[] args) {
Letter x = new Letter();
x.c = 'a';
print("1: x.c: " + x.c);
f(x);
print("2: x.c: " + x.c);
}
} /* Output:
1: x.c: a
2: x.c: z
// Passing objects to methods may not be
// what you're used to.
import static net.mindview.util.Print.*;
class Letter {
char c;
}
public class PassObject {
static void f(Letter y) {
y.c = 'z';
}
public static void main(String[] args) {
Letter x = new Letter();
x.c = 'a';
print("1: x.c: " + x.c);
f(x);
print("2: x.c: " + x.c);
}
} /* Output:
1: x.c: a
2: x.c: z
*///:~
在许多程序设计语言中,f()方法表面上似乎要在方法的作用域内制作自己的自变量Letter y 的一个副本。
但同样地,实际传递的是一个句柄。所以下面这个程序行:
y.c = 'z';
实际改变的是f()之外的对象。输出结果如下:
1: x.c: a
2: x.c: z
PS.如果学过C语言的话,那就很好理解了,这就是指针传递。
0 0
- 别名现象
- 别名现象
- java中的别名现象
- Java中的“别名现象”
- Java笔记---别名现象
- JAVA别名现象
- 关于别名现象
- java 别名现象
- 详述 Java 中的别名现象
- 详述 Java 中的别名现象 .
- java编程思想_005别名现象
- [《think in java》学习——操作符]别名现象
- Java中别名现象和对象引用问题
- 由赋值中的“别名现象”引发的思考
- linux别名
- 别名(Aliases)
- mysql 别名
- 数据库别名
- Apache的Order Allow,Deny 详解
- leetcode||Single Number II
- 010回文子串最长长度
- Oracle创建临时表:CREATE GLOBAL TEMPORARY TABLE
- Srping_
- 别名现象
- IntelliJ IDEA 13 SVN问题
- leetcode || Single Number
- java List LinkedList ArrayList
- 排序算法随笔
- ZOJ-1097
- struct list_head 内核链表范例 增删改查
- javascript的基础语法-时间
- 透过项目谈需求分析