如果我有一个具有如下接口(interface)定义的类;
public class FirstClass {
private static onDragListener listener
public interface onDragListener{
void doSomething();
}
//a static method to set on my drag listener
public static void setOnDragListener(onDragListener listener){
FirstClass.listener = listener
}
}
正如您在上面看到的,有一个 setOnDragListener(onDragListenerlistener)
静态方法可以在监听器上设置。
然后,还有另一个类实现第一个类中定义的接口(interface),如下所示:
public class SecondClass implements onDragListener{
public void initialize(){
FirstClass.setOnDragListener(this); //my question is here about 'this'.
}
}
我的问题是为什么我可以使用 this
作为参数传递给 initialize()
中的 FirstClass.setOnDragListener(this);
上面的方法?
我的意思是 setOnDragListener(onDragListener Listener)
期望传入 onDragListener
类型参数,this
会在 initialize 中执行吗?
第二类方法意味着接口(interface)的真正实现或者我如何理解它?
最佳答案
继承是一种is-a
关系。
SecondClass
是一个 onDragListener
。
这个
是一个SecondClass
。
因此,this
是一个 onDragListener
。
关于java - 需要传递给我的方法的 'this' 的解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9110222/