从调用对象调用函数

时间:2015-03-06 14:00:47

标签: java

这是个人项目。不是作业或工作。 假设我有一个具有函数objA的对象callB()

当我运行callB()时,它会调用对象B中的函数。objB中的函数可以调用objA中的函数。

EG。 objA来电callB()callB()内,有setObjAName()这样的函数可以在objA上设置变量。

我如何用Java做到这一点?如何从objA引用objB

1 个答案:

答案 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;
    }
}