编写一个汽车类Vehicle,包含变量“轮子数量”和“汽车重量”,包含构造方法和输出变量信息方法;汽车类Car是Vehicle的子类,继承了父类的变量和方法,有自己的构造方法,并新增了一个变量“载人数量”,重写了从父类中继承来的输出变量信息方法,以输出自己所有的变量信息;卡车类Truck是Car类的子类,继承了父类的属性和方法,有自己的构造方法,并新增了一个变量“最高载重量”,重写了从父类中继承来的输出变量信息方法,以输出自己所有的变量信息。 编写主类,首先声明Vehicle类的对象vehi,然后创建Car类的对象并将这个对象的引用赋给vehi,vehi对象调用输出变量信息方法;再创建Truck类的对象并将这个对象的引用赋给vehi,vehi对象再调用输出变量信息方法。
时间: 2024-02-13 10:03:50 浏览: 36
实现交通系统的对象模型Vehicle
好的,我明白了。以下是代码实现:
```java
class Vehicle {
int wheelNum;
int weight;
Vehicle(int wheelNum, int weight) {
this.wheelNum = wheelNum;
this.weight = weight;
}
void display() {
System.out.println("轮子数量:" + wheelNum + ",汽车重量:" + weight);
}
}
class Car extends Vehicle {
int passengerNum;
Car(int wheelNum, int weight, int passengerNum) {
super(wheelNum, weight);
this.passengerNum = passengerNum;
}
void display() {
System.out.println("轮子数量:" + wheelNum + ",汽车重量:" + weight + ",载人数量:" + passengerNum);
}
}
class Truck extends Car {
int maxLoad;
Truck(int wheelNum, int weight, int passengerNum, int maxLoad) {
super(wheelNum, weight, passengerNum);
this.maxLoad = maxLoad;
}
void display() {
System.out.println("轮子数量:" + wheelNum + ",汽车重量:" + weight + ",载人数量:" + passengerNum + ",最高载重量:" + maxLoad);
}
}
public class Main {
public static void main(String[] args) {
Vehicle vehi = new Car(4, 1000, 5);
vehi.display(); // 调用的是Car类的display()方法
vehi = new Truck(6, 2000, 3, 5000);
vehi.display(); // 调用的是Truck类的display()方法
}
}
```
运行结果:
```
轮子数量:4,汽车重量:1000,载人数量:5
轮子数量:6,汽车重量:2000,载人数量:3,最高载重量:5000
```
阅读全文