實現一個名為Person的類和它的子類Employee,Manager是Employee的子類,設計一個方法add用於漲工資,普通員工一次能漲10%,經理能漲20%。


1、實現一個名為Person的類和它的子類Employee,Manager是Employee的子類,設計一個方法add用於漲工資,普通員工一次能漲10%,經理能漲20%。具體要求如下:
(1)Person類中的屬性有:姓名name、地址address,定義該類的構造方法; 
(2)Employee類中的屬性有:工號id、工資wage、工齡workAge,定義該類的構造方法; 
(3)Manager類中的屬性有:級別level,定義該類的構造方法; 
(4)編寫一個測試類,創建一個員工和一個經理對象,給該員工和經理漲工資,並輸出其具有的信息。

 

Personjava
-----------------
package com.fs.test;

public class Person {
    private String name;
    private String address;
    //定義構造方法
    public Person(String name, String address){
        this.name = name;
        this.address = address;
    }

}


Employee.java
------------

package com.fs.test;
//繼承Person類
    public class Employee extends Person {
        private String ID;
        private double wage;
        private int workAge;

    public Employee(String name, String address, String ID, double wage, int workAge){
        super(name, address);  //調用父類的構造方法
        this.ID = ID;
        this.wage = wage;
        this.workAge = workAge;
        }
    
    public double add(String position){//  判斷職位
        if(position == "0"){
            wage = wage*1.2;
        }
        else{
            wage = wage*1.1;
        }
        return wage;
    }
        //設置get/set方法
    public double getWage() {
        return wage;
    }
    public void setWage(double wage) {
        this.wage = wage;
    }
}


--------------
Manager.java
------------
package com.fs.test;

//繼承Employee類
public class Manager extends Employee{
  private String level = "";  //1為普通員工,0為經理
  
  public Manager(String name, String address, String ID, double wage, int workAge, String level){
      super(name, address, ID, wage, workAge);
      this.level = level;
  }
      
      //設置get/set方法
  public String getLevel() {
      return level;
  }

  public void setLevel(String level) {
      this.level = level;
  }
}
----------
Test.java
--------------

package com.fs.test;

public class Test {

    public static void main(String[] args) {
    //  新建對象
        Manager normal = new Manager("狗剩", "哈爾濱", "001", 3500, 2, "1");
        Manager manager = new Manager("鐵蛋", "長春", "002", 10000, 7, "0");
        //  傳入職位,Manager類型的對象沒有add()方法,所以自動搜尋其父類,調用add()方法
        normal.add(normal.getLevel());
        manager.add(manager.getLevel());
        
        System.out.println("normal wage is:"+normal.getWage());
        System.out.println("manager wage is:"+manager.getWage());
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM