A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王大大呀 初级黑马   /  2019-9-18 19:23  /  866 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

* 语法点:封装,继承

* 按步骤编写代码,效果如图所示:

  ![](img\6.jpg)

* 编写步骤:

  1. 定义员工Employee类。包含属性:姓名,工号,部门。
  2. 定义经理Manager类继承Employee类,包含属性:职员(该经理的职员)。
  3. 定义职员Clerk类继承Employee类,包含属性:经理(该职员的经理)。
* 参考答案:

  ```java
  public class Test6 {
      public static void main(String[] args) {
          // 创建 经理对象
          Manager manager = new Manager("M001" , "张小强" , "销售部");
          // 创建 职员对象
          Clerk clerk = new Clerk("C001" , "李小亮" , "销售部");
          // 设置职员信息
          manager.setC(clerk);
          // 设置经理信息
          clerk.setM(manager);
                  // 展示信息
          manager.show();
          clerk.show();

      }

  }

   class Employee {
      //        a)成员变量: 工号(id),姓名(name), 部门(dapart)
      private String id;
      private String name;
      private String depart;

      public Employee() {
          super();
      }
   
       public Employee(String id, String name, String depart) {
           this.id = id;
           this.name = name;
           this.depart = depart;
       }
   
       public String getId() {
          return id;
      }
      public void setId(String id) {
          this.id = id;
      }
      public String getName() {
          return name;
      }
      public void setName(String name) {
          this.name = name;
      }
   
       public void show() {
           System.out.print(depart+"的:"+ name);
           System.out.println(",员工编号:"+id);
       }
   }

  class Manager extends  Employee{
      Clerk c ;
      public Manager() {
      }

      public Manager(String id, String name, String depart) {
          super(id, name, depart);
      }
   
      public Clerk getC() {
          return c;
      }
   
      public void setC(Clerk c) {
          this.c = c;
      }
   
      public void show() {
         super.show();
          System.out.println("他的职员是"+ c.getName());
      }
  }

  class Clerk extends  Employee{
      Manager m;
      public Clerk() {

      }
   
      public Clerk(String id, String name, String depart) {
          super(id, name, depart);
      }
   
      public Manager getM() {
          return m;
      }
   
      public void setM(Manager m) {
          this.m = m;
      }
      public void show() {
          super.show();
          System.out.println("他的经理是"+ m.getName());
      }

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马