一直很不明白,为什么java要设计抽象类这个概念,因为平时coding的时候,基本接口用的多,很少用抽象类,所以对他的设计始终存在疑问。今夜读java编程思想,只看明白了接口是他的一种特殊表现。查了资料后,才明白 抽象类比接口有一个更优越的地方:抽象类的演化比接口的演化要容易的多。在后续的发行版中,如果希望在抽象类中增加一个方法,只增加一个默认的合理的实现即可,抽象类的所有实现都自动提供了这个新的方法。对于接口,这是行不通的。虽然可以在骨架实现类中增加一方法的实现来解决部分问题,但这不能解决不从骨架实现类继承的接口实现的问题。由此,设计公有的接口要非常谨慎,一旦一个接口被公开且被广泛实现,对它进行修改将是不可能的。
think in java 关于抽象类
最新推荐文章于 2025-08-14 09:11:10 发布