【发布时间】:2010-12-28 06:47:48
【问题描述】:
所以你有一个接口和一个实现接口中方法子集的抽象类。您还有一些类继承了抽象类并提供了抽象类没有提供的方法的实现。
那么这里的最佳做法是什么?我说的是这样的问题:
1) 抽象类应该实现接口还是它的子类?应该每节课吗?在我看来,只有抽象类应该。当然,所有的类都可以实现接口,但这似乎是多余的,因为抽象的子类将“继承”接口,因为它们扩展了抽象类。
2) 既然抽象类实现了接口的一部分,它是否也应该为它没有实现的方法声明抽象方法?在我看来这是对的,但在某种程度上这似乎是多余的,因为抽象的孩子需要实现这些方法才能编译。
那么,您认为最佳实践的理由是什么?问题归结为:我们有一个接口,它定义了我们想让某些类做什么,我们在接口中有一个定义常见行为的方法子集,我们有几种不同的方法来定义不常见的行为。最好的布置方式是什么?
【问题讨论】:
标签: java oop inheritance interface abstract-class