java利用继承的思想,定义交通工具抽象类,实现汽车、火车、飞机子类,编写上转型程序并输出各个交通工具的乘坐信息。java
时间: 2024-10-21 12:08:07 浏览: 46
在Java中,我们可以使用继承的概念来创建一个抽象的交通工具(Vehicle)类,然后为其提供一些通用的行为,如“出行”或“乘坐人数”。接着,我们为具体的交通工具(如Car、Train、Airplane)创建子类,并实现这些抽象方法,赋予它们各自特有的属性和行为。
首先,定义一个抽象的交通工具类Vehicle:
```java
abstract class Vehicle {
abstract void travel();
public void seatingInfo() {
System.out.println("This is a vehicle.");
}
}
```
然后,为每个具体的交通工具创建子类:
```java
class Car extends Vehicle {
void travel() {
System.out.println("Driving the car.");
}
}
class Train extends Vehicle {
void travel() {
System.out.println("Riding on the train.");
}
}
class Airplane extends Vehicle {
void travel() {
System.out.println("Flying on an airplane.");
}
}
```
接下来,我们可以对这些子类的对象进行上转型,即把它们当作其共同父类Vehicle来操作:
```java
public static void main(String[] args) {
Vehicle car = new Car();
Vehicle train = new Train();
Vehicle airplane = new Airplane();
car.travel(); // 输出: Driving the car.
train.travel(); // 输出: Riding on the train.
airplane.travel(); // 输出: Flying on an airplane.
car.seatingInfo(); // 所有交通工具共有的信息
train.seatingInfo();
airplane.seatingInfo();
}
```
在这个例子中,虽然car、train和airplane都是Vehicle类型的实例,但当我们调用各自的travel方法时,会分别执行子类特有的行为。
阅读全文