星级酒店案例

一、案例介绍                                                                                                              点击此处返回总目录

二、分析

三、代码实现

 

 

 

 

一、案例介绍 

     某五星级酒店,资金雄厚,要招聘多名员工(经理、厨师、服务员)。入职的员工需要记录个人信息(姓名、工号、经理特有奖金属性)。他们都有自己的工作要做。 

 

     本案例要完成如下需求: 

     1、酒店开设VIP服务,酒店的厨师与服务员可以提供VIP服务。(厨师做菜加量、服务员给顾客倒酒)。

     2、编写测试类

          2.1 向酒店中,增加多名员工(其中包含1名经理,1名厨师、2名服务员);

          2.2 调用酒店员工的工作功能 

          2.3 调用酒店员工的VIP服务功能 

 

 

二、分析 

 

抽象类:员工类(姓名、工号、工作)

接口:服务

 

 

三、代码实现:

1.在以后开发过程当中,每个类都要提供两套构造方法,一个是空参数,另一个是满参数的构造方法。调用者用哪个都可以。

2.要写注释。

3.如果有私有成员,必须要提供get,set方法。

 

//VIP.java

package cn.itcast.demo01;

 

/*

 * 接口:酒店的VIP服务。

 * 只有厨师和服务员提供VIP服务。

 */

 

public interface VIP{

      public abstract void service(); 

}

 

//Employee.java

package cn.itcast.demo01;

/*

 * 酒店的员工类

 * 定义员工的共性:姓名、工号、工作方法

 */

 

public abstract class Employee{

      private String name;

      private String id;

 

      public Employee(){                                       //必须要提供两套构造函数

   

      }      

 

      public Employee(String name , String id){      //必须要提供两套构造函数

             this.name  = name;

             this.id = id;

      }

 

      public abstract void work();

 

      public void setName(String name){                 //有私有成员的时候必须提供get、set方法。

             this.name = name;

      }

 

      public String getName(){

              return name;

      }

 

      public void setId(String id){

              this.id = id;

      } 

 

      public String getId(){

              return id;

      }

}

 

//Cooker.java

package cn.itcast.demo01;

 

/*

 * 厨师类

 * 继承员工类,实现VIP接口

 */

 

public class Cooker extends Employee implements VIP{

      public Cooker(){}

   

      public Cooker(String name , String id){

             super(name,id);

      }

 

      public void work(){

             System.out.println("做菜");

      }

 

      public void service(){

            System.out.println("多放菜");

      }

}

 

//Sever.java

package cn.itcast.demo01;

 

/*

 * 服务员类

 * 继承员工类,实现VIP接口

 */

 

public class Server extends Employee implements VIP{

      public Server(){}

   

      public Server(String name , String id){

             super(name,id);

      }

 

      public void work(){

             System.out.println("端菜");

      }

 

      public void service(){

            System.out.println("倒酒");

      }

}

 

//Manager.java

package cn.itcast.demo01;

 

/*

 * 经理类

 * 继承员工类

 */

 

public class Manager extends Employee{

      private double bonus;

 

      public Manager(){

 

     }

   

      public Manager(String name , String id, double bonus){     //这么写!

             super(name,id);

             this.bonus= bonus;

      }

 

      public void work(){

             System.out.println("端菜");

      }

 

      public double getBonus(){

             return bonus;

      }

 

      public void setBonus(double bonus){

             this.bonus = bonus;

      }

}

 

//Test.java

package cn.itcast.demo01;

 

public class Test{

      public static void main(String[] args){

            Manager m1 = new Manager("小明","董事会",12222.33);

            m1.work();

 

            Server s1 = new Server("翠花","服务部001");

            Server s2 = new Server("酸菜","服务部002");

            s1.work();

            s2.service();

 

           Cooker c1 = new Cooker("老干妈","后厨001");

           Cooker c2 = new Cooker("老干爹","后厨001");

           c1.work();

           c2.service();

      }

}

 

 

 

 

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值