抽象是什么?
- 抽象类作为基类,不能直接实例化。它用于创建一种通用的类形式,允许子类提供某些方法的具体实现。
- 抽象类中的抽象方法已经声明,但在基类中还没有实现。子类需要提供具体的实现。
什么时候使用抽象类?
- 如果您想确保某些功能必须通过子类来实现,请使用抽象类。
- 一个常见的例子是抽象几何形状,它提供了 area() 该方法的签名,但将如何计算面积的责任留给子类,例如 Triangle 和 Rectangle。
使用 TwoDShape 示例实现: 请参考抽象包中的示例
代码说明: TwoDShape 抽象类:
- 它被定义为抽象,因为直接实现area()毫无意义。每个特定的几何形状(如三角形或矩形)都必须提供自己的面积计算方法。
- area() 该方法被声明为抽象方法,强制子类实现其版本。
三角形和矩形子类:
- 两个子类都继承自TwoDShape,都需要实现area()方法。
- 三角形的面积计算公式为底部*高/2。
- 矩形通过宽度 * 计算面积的高度公式。
AbsShape 类:
- 多态性通过抽象演示。 area() 该方法是多态调用的,该方法的正确版本是根据对象类型(三角形或矩形)执行的。
以上是抽象的详细内容,请关注图灵教育的其他相关文章!