编写Java程序,设计一个门类Door,可以实现基本的开关行为(方法),还要具有报警和照相功能。
时间: 2024-03-17 22:43:00 浏览: 29
好的,以下是一个增加报警和照相功能的Door类的Java程序:
```java
public class Door {
private boolean isOpen; // 门的状态,true表示门打开,false表示门关闭
// 构造方法,初始化门的状态为关闭
public Door() {
isOpen = false;
}
// 打开门的方法
public void open() {
isOpen = true;
System.out.println("门已打开!");
takePhoto();
}
// 关闭门的方法
public void close() {
isOpen = false;
System.out.println("门已关闭!");
soundAlarm();
}
// 获取门的状态的方法
public String getStatus() {
if (isOpen) {
return "门是打开的";
} else {
return "门是关闭的";
}
}
// 报警的方法
private void soundAlarm() {
System.out.println("警报响起!");
}
// 照相的方法
private void takePhoto() {
System.out.println("照相中...");
}
}
```
使用这个Door类,可以创建门的实例,然后调用open()方法打开门,调用close()方法关闭门,调用getStatus()方法获取门的状态。同时,门在打开时会自动照相,在关闭时会自动报警。例如:
```java
public class TestDoor {
public static void main(String[] args) {
Door door = new Door(); // 创建门的实例
System.out.println(door.getStatus()); // 输出门的状态,应该是“门是关闭的”
door.open(); // 打开门
System.out.println(door.getStatus()); // 输出门的状态,应该是“门是打开的”
door.close(); // 关闭门
System.out.println(door.getStatus()); // 输出门的状态,应该是“门是关闭的”
}
}
```
运行这个TestDoor类,就可以看到门的开关行为、自动报警和自动照相的效果了。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)