实现接口时避免无体抽象方法 - java

时间:2011-12-31 10:12:14

标签: java interface methods abstract

当我想为一个简单的WindowListener实现一个接口时真的很烦人,但完成工作的唯一方法就是实现所有方法,只留下一个无体的方法。看起来真的很丑陋,可以避免..

在这种情况下,是否存在可以避免无体实现的某种设计模式?

我尝试了策略/策略模式,但我最终采用相同的无体方法,除了更多的OOP方式。

3 个答案:

答案 0 :(得分:6)

使用WindowAdapter并仅覆盖您需要的方法。有关here的更多信息。

答案 1 :(得分:2)

WindowListener的API文档中,提到了一个类WindowAdapter来实现接口:

  

此类中的方法为空。此类存在是为了创建侦听器对象的便利。

答案 2 :(得分:1)

是的,对于听众来说,通常会有AbstractXXXAdapter定义了所有方法(使用空体)。然后,当您使用自己的侦听器时,您只需将其子类化并实现您需要的内容。有些框架提供这些,其他框架不提供,因此您可能必须自己完成。