java中是不是所有监听接口必有回调click方法,为什么click方法不是abstrac修饰的而是public修饰的
1、请看源码:
public interface OnClickListener {
/**
* Called when a view has been clicked.
*
* @param v
* The view that was clicked.
*/
void onClick(View v);
}
```
2、可见,onClick()是在一个接口中的。在java中,一个类实现一个接口,需要实现里面的全部方法,如果不全部实现,则这个类为抽象类。
3、在java的接口中,所有的方法都是抽象的,不论是否使用abstract修饰;所有的属性都是静态、不可变的,不论是否使用static final修饰。
click只是一种事件,还有别的事件。另外,不一定非要指定方法,如果不指定,java会调用基类的方法。不知道你说的click方法是什么,是你的事件实现代码还是说的是事件接口。这里不存在abstract。所有的事件在java中都是接口。
不是啊,java得监听事件有很多的啊,除了点击click事件,还有键盘的敲击事件、鼠标的移动事件等等。
abstract是抽象方法定义的标识,点击事件是一个需要具体实现的方法, JDK的awt中定义的是public的。