您的位置:首页 > 汽车 > 新车 > java 继承的案例

java 继承的案例

2024/9/19 3:20:34 来源:https://blog.csdn.net/laocooon/article/details/142208372  浏览:    关键词:java 继承的案例

java 继承的案例

以下是一个简单的Java类继承的例子。在这个例子中,我们定义了一个基类Vehicle,然后定义了两个派生类CarTruck

这个代码示例展示了面向对象编程中的继承和方法重写的基本用法。以下是对代码的详细分析:

类定义

  1. 基类 Vehicle

    • 属性
      • make:表示车辆的制造商(如“Toyota”)。
      • speed:表示车辆的速度,但在示例中并未使用。
    • 构造方法
      • Vehicle(String make):初始化 make 属性。
    • 方法
      • drive():打印出“Driving a [make]”的消息。
  2. 子类 Car 继承自 Vehicle

    • 属性
      • seatCount:表示车内座位的数量。
    • 构造方法
      • Car(String make, int seatCount):调用基类构造方法以初始化 make,并初始化 seatCount
    • 方法
      • drive():重写基类的 drive() 方法,打印出“Driving a [make] with [seatCount] seats”的消息。
  3. 子类 Truck 继承自 Vehicle

    • 属性
      • payload:表示卡车的载重(以千克为单位)。
    • 构造方法
      • Truck(String make, int payload):调用基类构造方法以初始化 make,并初始化 payload
    • 方法
      • drive():重写基类的 drive() 方法,打印出“Driving a [make] with payload of [payload] kg”的消息。

class Vehicle {// 基类属性protected String make;protected int speed;// 基类构造方法public Vehicle(String make) {this.make = make;}// 基类方法public void drive() {System.out.println("Driving a " + make);}
}class Car extends Vehicle {// 车辆属性private int seatCount;// 构造方法public Car(String make, int seatCount) {super(make); // 调用基类构造方法this.seatCount = seatCount;}// 覆盖基类方法@Overridepublic void drive() {System.out.println("Driving a " + make + " with " + seatCount + " seats");}
}class Truck extends Vehicle {// 卡车属性private int payload;// 构造方法public Truck(String make, int payload) {super(make); // 调用基类构造方法this.payload = payload;}// 覆盖基类方法@Overridepublic void drive() {System.out.println("Driving a " + make + " with payload of " + payload + " kg");}
}// 测试代码
public class InheritanceExample {public static void main(String[] args) {Car car = new Car("Toyota", 5);Truck truck = new Truck("Ford", 1000);car.drive(); // 输出: Driving a Toyota with 5 seatstruck.drive(); // 输出: Driving a Ford with payload of 1000 kg}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com