gpt4 book ai didi

java - 如何获取在 A 类中设置的 C 类中的 getter 值(在 B 类中声明)

转载 作者:行者123 更新时间:2023-11-30 10:08:06 24 4
gpt4 key购买 nike

我有三个类 A 类设置值,B 类创建 getter 和 setter,B 类获取值(在 A 类中设置)

因为我在 A 类和 C 类中创建了 B 类的新实例。我无法在 A 类中设置的 C 类中获取值。

我承认的是我们需要将对 C 类实例的引用从 A 类传递到 B 类。

但是我不知道怎么做。

我试过这段代码。我知道结果是不可能的。我不知道该怎么做。

public Class A {
int X = 9;
B b = new B();
b.setValue(X);
}

public Class B {
private float value = 0;
public float getValue() {
return value;
}
public void setValue(float value){
this.value = value;
}
}

public Class C {
B b = new B();
final float x = b.getValue();
}

我希望当我在 C 类中使用 B 类的 getValue() 方法时,我能够通过 setValue() 方法获取 A 类中的值

最佳答案

每当您使用“new”关键字创建一个对象时,请记住您正在创建一个新对象并为其分配一个新的内存空间。现在在类C中,当你新建一个B的对象时,会为这个实例b分配一个新的内存空间。(此实例 b 与类 A 中的 b 指向的内存位置不同)创建对象后,您立即调用 b.getValue(),它只会为您提供默认值“value”。

when I use getValue() method of class B in Class C. I am able to get the value putted in Class A by setValue() method

为了得到A中设置的值,需要调用b的getValue() --属于 A 类的对象 b(而不是在类 C 中声明的对象 b)

因此您需要在 C 类中使用 a.b.getValue() 访问它。

关于java - 如何获取在 A 类中设置的 C 类中的 getter 值(在 B 类中声明),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53928111/

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