为什么监听器在 Java 接口中?
Why are Listeners in Java interfaces?
为什么Java接口中的所有监听器?为什么他们不能表现出 类 的行为?
Java 不允许多重继承,所以所有 classes 都有一个直接的 superclass。如果侦听器是 classes,您将无法同时扩展任何其他 class。但是监听器没有任何字段,它们只提供方法供 subclass 重写,所以它们也可以是接口。这意味着如果需要,您可以自己扩展另一个 class,并且它允许您在一个 class.
中实现多个侦听器
因此,从本质上讲,声明要覆盖的 classes 并且没有字段作为接口而不是抽象 classes 几乎总是更好。使用 Java 8 你甚至可以声明 default
方法,所以这些方法甚至不必是抽象的。
为什么Java接口中的所有监听器?为什么他们不能表现出 类 的行为?
Java 不允许多重继承,所以所有 classes 都有一个直接的 superclass。如果侦听器是 classes,您将无法同时扩展任何其他 class。但是监听器没有任何字段,它们只提供方法供 subclass 重写,所以它们也可以是接口。这意味着如果需要,您可以自己扩展另一个 class,并且它允许您在一个 class.
中实现多个侦听器因此,从本质上讲,声明要覆盖的 classes 并且没有字段作为接口而不是抽象 classes 几乎总是更好。使用 Java 8 你甚至可以声明 default
方法,所以这些方法甚至不必是抽象的。