这是个人项目。不是作业或工作。
假设我有一个具有函数objA
的对象callB()
。
当我运行callB()
时,它会调用对象B中的函数。objB
中的函数可以调用objA中的函数。
EG。 objA
来电callB()
在callB()
内,有setObjAName()
这样的函数可以在objA
上设置变量。
我如何用Java做到这一点?如何从objA
引用objB
?
答案 0 :(得分:1)
最简单的方法是使用方法调用简单地将引用传递给A in,这将允许B访问A的任何公共方法。
public class ClassA {
public String someAVar;
public void callB(ClassA a){
//do stuff
ClassB b = new ClassB();
b.setObjA(this,"newValue");
}
}
public class ClassB{
public void setObjA(ClassA A, String newValue){
A.someAVar = newValue;
}
}
或者你可能希望变量可以在不传入特定实例的情况下进行设置,在这种情况下,静态方法和变量就是你的朋友。
public class ClassA {
public static String someAVar;
public void callB(){
//do stuff
ClassB b = new ClassB();
b.setObjA("newValue");
}
}
public class ClassB{
public void setObjA(String newValue){
ClassA.someAVar = newValue;
}
}