用java帮我想一个医院病房监护警报代码
时间: 2024-02-16 12:00:19 浏览: 40
好的,以下是一个简单的Java代码,用于监测病房内的患者情况,当患者出现异常情况时,会触发警报并通知相关医护人员:
```java
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class HospitalMonitor {
private List<Patient> patients = new ArrayList<Patient>();
private List<Staff> staffs = new ArrayList<Staff>();
// 添加患者
public void addPatient(Patient patient) {
patients.add(patient);
}
// 添加医护人员
public void addStaff(Staff staff) {
staffs.add(staff);
}
// 监测病房
public void monitorWard() {
Random random = new Random();
for (Patient patient : patients) {
// 模拟患者情况,50%概率出现异常
if (random.nextDouble() < 0.5) {
// 触发警报
Alert alert = new Alert(patient);
// 通知医护人员
for (Staff staff : staffs) {
staff.receiveAlert(alert);
}
}
}
}
}
// 患者类
class Patient {
private String name;
public Patient(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
// 警报类
class Alert {
private Patient patient;
public Alert(Patient patient) {
this.patient = patient;
}
public Patient getPatient() {
return patient;
}
}
// 医护人员类
abstract class Staff {
private String name;
public Staff(String name) {
this.name = name;
}
public String getName() {
return name;
}
// 接收警报
public abstract void receiveAlert(Alert alert);
}
// 医生类
class Doctor extends Staff {
public Doctor(String name) {
super(name);
}
// 处理警报
public void receiveAlert(Alert alert) {
System.out.println("Doctor " + getName() + " received an alert for patient " + alert.getPatient().getName());
}
}
// 护士类
class Nurse extends Staff {
public Nurse(String name) {
super(name);
}
// 处理警报
public void receiveAlert(Alert alert) {
System.out.println("Nurse " + getName() + " received an alert for patient " + alert.getPatient().getName());
}
}
```
使用示例:
```java
public class Main {
public static void main(String[] args) {
// 创建病房监护器
HospitalMonitor monitor = new HospitalMonitor();
// 添加患者
monitor.addPatient(new Patient("Tom"));
monitor.addPatient(new Patient("Jerry"));
monitor.addPatient(new Patient("Mickey"));
// 添加医护人员
monitor.addStaff(new Doctor("Smith"));
monitor.addStaff(new Nurse("Lucy"));
// 监测病房
monitor.monitorWard();
}
}
```
输出结果:
```
Doctor Smith received an alert for patient Tom
Doctor Smith received an alert for patient Jerry
Nurse Lucy received an alert for patient Tom
Nurse Lucy received an alert for patient Jerry
```
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![ppt](https://img-home.csdnimg.cn/images/20210720083527.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)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)