楼上兄弟讲解的抽象的类语法很详细了,但我感觉不有必要补充一点,因为上面只是介绍了一下抽象的语法和用法规则。记得一开始学java的时候,我很迷惑,为什么要使用抽象类?因此这个方面出现,若想明白什么是抽象类,不能仅从用法规则来说明。我们如何定义一个抽象类呢(不从代码角度思考):规定出所有的具体类的方法特征作用系统的抽象层,这个抽象层预见了所有的可能扩展,因此在任何情况下不会改变。这样做的好处是什么呢?这使得系统满足了系“开-闭”原则的第二条:对修改关闭同时,从抽象层导出一个或多个新的具体类可以改变系统的行为,因此系统的设计对扩展是开放的,这就满足了“开-闭”原则的第一条:对扩展开放。定义抽象类,我们可以根据依赖倒转原则,开发很好的松耦合的系统,加强系统的可维护性。抽象层的好处不有很多,先举这一些吧。本人一点小拙见,如有错误,欢迎指证 |