gpt4 book ai didi

java - 实例变量如何影响我的构造函数的值?

转载 作者:行者123 更新时间:2023-12-02 10:36:03 27 4
gpt4 key购买 nike

我正在进行 java 练习,但对最后 4 行代码的新值有些困惑。

public class Snake {
public Snake x = null;
public Snake y = null;

public static void main(String[] args) {
Snake a = new Snake();
Snake b = new Snake();
a.x = a;
b.x = a.x;
b.y = b.x;
a.y = b.y.x;
}
}

最佳答案

然后你就明白了ab是两条蛇。但它们实际上是指两种不同的蛇。

a.x = a :表示使a.x引用a引用的snake。

b.x = a.x :表示使 b.x 引用 a.x 引用的蛇(因此与 a 相同) )。

b.y = b.x :表示使 b.y 引用 b.x 引用的蛇(因此与 a 相同) )。

a.y = b.y.x:表示使a.y引用b.y.x引用的snake,因为b.y引用a,指的是 a.x,与 a 相同。

关于java - 实例变量如何影响我的构造函数的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53286149/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com