继承是面向对象编程的三个基本原则之一。
允许创建层次分类。
通过继承,您可以创建一个通用类来定义一组相关项的共同特征。
这个通用类可以被其他更具体的类继承,从而添加专有特性。
用Java术语来说,继承的类称为超类。
继承的类称为子类。
子类是超类的特殊版本。
子类继承了超类的所有变量和方法,并添加了自己独特的元素。
继承的基本方面
Java 支持继承,允许一个类在其声明中合并另一个类。
这是通过 extends 关键字完成的。
子类向超类添加功能(扩展)。
这方面的一个例子是创建一个名为 TwoDShape 的超类,它存储二维对象的宽度和高度。
创建了一个名为 Triangle 的子类来扩展 TwoDShape。
extends 关键字用于创建子类。
TwoDShape 定义通用二维形状的属性,例如正方形、矩形、三角形等。
Triangle 类是 TwoDShape 的子类,并创建一个特定类型:三角形。
Triangle 继承了 TwoDShape 的所有内容,并添加了样式字段、area() 方法和 showStyle() 方法。
style 存储三角形的样式,可以是任何描述,例如“完整”、“轮廓”或“等腰”。
area()方法计算并返回三角形的面积。
showStyle() 方法显示三角形的样式。
Triangle 可以在 area() 中以及直接在 t1 和 t2 对象中访问 TwoDShape 的宽度和高度成员。
TwoDShape 尽管是 Triangle 的超类,但它是一个独立的类,可以单独使用。
TwoDShape 形状 = new TwoDShape();
形状.宽度 = 10;
形状.高度 = 20;
shape.showDim();
类子类名扩展超类名{
// 类体
}
在 Java 中,您只能为您创建的任何子类指定单个超类。
Java 不支持多重继承(从同一个子类中的多个超类继承),与 C 不同。
可以创建一个继承层次结构,其中一个子类成为另一个子类的超类。
没有类可以是其自身的超类。
继承的一个优点是超类可以定义多个对象共有的属性,从而允许创建许多特定的子类。
每个子类都可以在超类的基础上定义自己的具体分类。
一个例子是创建 TwoDShape 的子类来封装矩形。
矩形类是 TwoDShape 的子类。
添加 isSquare() 方法,用于判断矩形是否为正方形(当宽度等于高度时)。
还添加了area()方法,该方法计算矩形的面积。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3