内存Memory

值类型Value Type

分析题

如果按照 值类型 的数值传输方式

1 2 3 4 5
public class Point { public int x; public int y; ...}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
public class Main { ... public void run() { Point p1 = Point(3, 4); Point p2 = cross(p1); Console.println(p1.x); // 检查点 2 Console.println(p2.x); // 检查点 3 } public Point cross(Point point) { int temp = point.x; point.x = point.y; point.y = temp; Console.println(point.x); // 检查点 1 return point; }}

上面的代码 在每个检查点的位置,会看到多少

1.

检查点 1

A

3

B

4

2.

检查点 2

A

3

B

4

3.

检查点 3

A

3

B

4

引用类型Reference Type

分析题

如果按照 引用类型 的数值传输方式

1 2 3 4 5
public class Point { public int x; public int y; ...}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
public class Main { ... public void run() { Point p1 = new Point(3, 4); Point p2 = cross(p1); Console.println(p1.x); // 检查点 2 Console.println(p2.x); // 检查点 3 } public Point cross(Point point) { int temp = point.x; point.x = point.y; point.y = temp; Console.println(point.x); // 检查点 1 return point; }}

上面的代码 在每个检查点的位置,会看到多少

1.

检查点 1

A

3

B

4

2.

检查点 2

A

3

B

4

3.

检查点 3

A

3

B

4

对象 与 内存

内存练习 - 基础

Q37 E01

内存练习 - 循环

Q37 E02

内存练习 - 对象组合

Q37 E03

数组 与 内存

内存练习 - 对象数组

Q37 E04

高级人工内存 实战

内存练习 - 函数调用

Q37 E05

内存练习 - 函数 与 对象

Q37 E06

内存练习 - 综合练习

Q37 E07

ZZAX 微信公众

文档一更新,立刻告诉你