1.封装特性:设计汽车类,飞机类。画出类图
时间: 2024-09-19 14:15:36 浏览: 49
封装是一种软件设计原则,它强调将数据和处理数据的方法组合在一起,形成独立的模块,以隐藏内部细节并提供对外接口。在这个场景中,我们可以创建两个类,比如`Car`和`Airplane`,来代表不同的交通工具。
首先,我们有一个基础的`Vehicle`类,可能包含一些通用属性如`color`、`make`以及共有的操作,如`start()`和`stop()`:
```plaintext
class Vehicle {
private String color;
private String make;
public Vehicle(String color, String make) {
this.color = color;
this.make = make;
}
// 公开的方法
public void start() { ... }
public void stop() { ... }
// 仅提供读取颜色和制造商
public String getColor() { return color; }
public String getMake() { return make; }
}
// 汽车类 Car 继承自 Vehicle,并可能添加特有的属性和方法
class Car extends Vehicle {
private int seats;
public Car(String color, String make, int seats) {
super(color, make);
this.seats = seats;
}
// 可能有特定于汽车的操作,例如加油
public void refuel() { ... }
}
// 飞机类 Airplane 也继承自 Vehicle
class Airplane extends Vehicle {
private int capacity;
private boolean hasWings;
public Airplane(String color, String make, int capacity, boolean hasWings) {
super(color, make);
this.capacity = capacity;
this.hasWings = hasWings;
}
// 飞机特有的操作,如起飞和降落
public void takeOff() { ... }
public void land() { ... }
}
```
在这个类图中,`Vehicle`是父类,`Car`和`Airplane`是它的子类。它们共享了`Vehicle`的公共属性和方法,同时每个子类还包含了各自特有的属性和方法,体现了封装的特性。
阅读全文