调用类的访问方法

时间:2015-09-07 12:02:22

标签: java

我希望在触发被调用类中的方法时访问调用类的方法。以下是我想做的例子。制作类C实例的类是随机调用的。因此,当listerners方法被触发时,呼叫类'接口方法应该能够听到tigger.Thats我想做什么

Interface myinterface
{
    public void interfacemethod(); 
}

class A implements myinterface
{  
    C instance = new C ();

    public void interfacemethod()
}

class B implements myinterface
{    
    C instance = new C ();
    public void interfacemethod()
}

Class C extends someListerner
{
    public void listenercalled()
    {
        //here i want to call the callers interfacemethod()
    }
}

1 个答案:

答案 0 :(得分:0)

您需要将指针传递给调用者对象。

如果您试图调用C&#39的创建者的Myinterface对象,请在C构造函数中传递Myinterface指针。

C instance = new C(this);

将该指针存储在C类中并将其用于回调。 Java函数是"虚拟"默认情况下。这意味着,无论是否进行强制转换,都会调用最低的子类函数(我认为这就是你想要的)。

Interface Myinterface{
   public void interfacemethod(); 
}

class A implements Myinterface
{  
    C instance = new C ((Myinterface)this);

    public void interfacemethod()
}

class B implements Myinterface
{    
    C instance = new C ((Myinterface)this);
    public void interfacemethod()
}

Class C extends someListerner
{
    Myinterface ml;
    public C(Myinterface arg_ml){
        ml = arg_ml;
    }
    public void listenercalled()
    {
        ml.interfacemethod();
        //here i want to call the callers interfacemethod()
    }
}