酒店里面有厨师服务员经理等员工,员工都有姓名,员工编号等信息,酒店规定员工上班必须打卡、工作,且厨师和服务员必须提供vip服务(如:厨师vip服务加菜服务员vip服务嘘寒问暖)分析以上描述,使JAVA
时间: 2024-11-25 07:13:29 浏览: 3
企业培训(员工培训)-酒店服务礼仪.pptx
这是一个典型的员工管理系统的简化场景,可以使用Java来设计一个基础的员工模型以及相关的操作。首先,我们可以创建三个类来表示酒店的不同员工角色:厨师(Cook)、服务员(Waiter)和经理(Manager),每个类都包含基本信息如姓名(Name)和员工编号(EmployeeID)。为了跟踪上下班情况,我们可以添加一个`workSchedule`属性和方法来记录打卡和工作时间。
```java
public abstract class Employee {
private String name;
private int employeeID;
public Employee(String name, int employeeID) {
this.name = name;
this.employeeID = employeeID;
}
// getters and setters for name and ID
public abstract void clockIn();
public abstract void clockOut();
}
class Cook extends Employee {
// 省略了VIP服务相关的字段和方法
public void provideVIPService() {
// 提供厨师的VIP服务,比如加菜
}
}
class Waiter extends Employee {
// 省略了VIP服务相关的字段和方法
public void provideVIPService() {
// 提供服务员的VIP服务,如嘘寒问暖
}
}
class Manager extends Employee {
// 管理员可能没有VIP服务,但可能有其他职责
}
```
然后,你可以创建一个`Hotel`类来管理所有员工:
```java
class Hotel {
private List<Employee> employees;
public Hotel() {
employees = new ArrayList<>();
}
public void addEmployee(Employee employee) {
employees.add(employee);
}
public void enforceVIPService(Employee employee) {
if (employee instanceof Cook || employee instanceof Waiter) {
((Employee) employee).provideVIPService();
} else {
System.out.println(employee.getName() + " 不需要提供VIP服务");
}
}
}
// 使用示例
Hotel hotel = new Hotel();
hotel.addEmployee(new Cook("张三", 1));
hotel.addEmployee(new Waiter("李四", 2));
hotel.enforceVIPService(hotel.getEmployees().get(0)); // 张三提供VIP服务
```
阅读全文