gpt4 book ai didi

Java访问调用者变量,可能吗?如何?

转载 作者:行者123 更新时间:2023-12-01 19:11:22 26 4
gpt4 key购买 nike

我有课

    main {  
Class1 class1=new Class1();
class1.function1();
}


class Class1 {
int abc=1;
ArrayList<Class2> class2s=new ArrayList<Class2>();

int function1() {
class2s.add(new Class2(asd));
abc=555;
}
}

class Class2 {
int functionx() {
Log.e("abc?", ""+PARENT???.abc);
}
}

如何获取调用者类的变量,例如 abc?

最佳答案

您可以将调用者作为参数传递,如下所示:

int functionx(Class1 caller) {
Log.e("abc?", ""+caller.abc)
}

并调用它

Class2 cls = new Class2()
cls.functionx(this)

只要 abc 对 Class2 可见。否则,在 Java 中没有直接的方法来了解你的调用者。变量class2s实现了Class1和Class2之间的单向关系。因此,您只能从 Class1 导航到 Class2,反之则不然。

关于Java访问调用者变量,可能吗?如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8272587/

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