本项目通过Java编程语言创建一个模拟风扇控制系统,用户可以调整速度和开关状态,旨在学习对象导向编程及事件处理机制。
模拟风扇(满分50分)
版本1:满分 15 分
实现一个电风扇模型,能够调节3种速度等级(慢速、中速、快速);具备开关按钮功能;设定定时吹风选项,并描述扇叶的大小和颜色等细节。设计Fan 类,其属性包括:
- 三个常量 SLOW (值为1)、MEDIUM(值为2) 和 FAST(值为3),表示风扇的不同速度等级;
- int 型变量 speed 表示当前的速度,默认设置为SLOW;
- boolean 变量 on 表示开关状态,默认关闭(false);
- double 类型的 radius 表示扇叶直径大小;
- String 类型的 color 用于描述扇叶颜色,其默认值设为蓝色。
此外还需实现访问这些属性的方法、构造函数以及重写 Object 类中的 toString() 和 equals() 方法等。测试代码如下:
```java
public static void main(String[] args) {
Fan1 fan1 = new Fan1();
fan1.setSpeed(Fan1.FAST);
fan1.setRadius(10);
fan1.setColor(yellow);
fan1.setOn(true);
System.out.println(fan1.toString());
}
```
版本2:满分 15 分
在上述Fan 类的基础上进行改进,使其继承 JPanel 类,并将 color 属性类型更改为 Color。同时设定 radius 的随机生成值范围为 1-5;颜色的取值包括 red、blue、yellow 和 green 等多种选项。根据这些属性绘制出相应的风扇图像。
版本3:满分 20 分
在此基础上,让该电扇模型能够转动起来。创建一个 FanControl 类以实现以下功能:
- Start 按钮用于开启风扇;
- Stop 滑块控制速度调节(使用滚动条)。
- Reverse 功能反转风向;
运行示例展示如下: