在什么情况下你更喜欢没有方法的抽象类?

时间:2012-08-07 18:29:49

标签: java oop

我正在浏览一些Java代码,我看到很多抽象类,其中没有任何内容。

例如。像这样的东西 -

public abstract class Processor
 {

 }

他们有具体的实现课程。在什么情况下这样的抽象类是有意义的?

4 个答案:

答案 0 :(得分:3)

IMO,当您想要创建一个具有所有子类共有的行为和状态的基类时,抽象类优先于接口。我不确定任何空抽象类比接口更有用的情况。通常,标记接口是空的。

答案 1 :(得分:2)

当你有一些对所有可能的实现类都通用的逻辑时,会使用

Abstract类。

编写一个内部没有任何内容的Abstract class和扩展它的不同类几乎没用。只有difference是你可以对所有具体类使用相同的handle

答案 2 :(得分:0)

其中一种情况是,如果您不希望使用new关键字对您的类进行实例化,那么您可以将其定义为抽象。

答案 3 :(得分:0)

在某些库中,他们会使用反射来查找这些标记抽象类的实现。这也是抽象类名本身的代码文档。