繼承結構下的標準Javabean
代碼如下:
package demo10;//定義員工父類
public class Employee {private String id;private String name;private double salary;//構造方法public Employee(){}public Employee(String id,String name,double salary){this.id=id;this.name=name;this.salary=salary;}//get和set方法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 double getSalary() {return salary;}public void setSalary(double salary) {this.salary = salary;}//成員方法public void work(){System.out.println("員工在工作");}public void eat(){System.out.println("吃米飯");}
}
package demo10;//經理子類 繼承 員工父類
public class Manager extends Employee{//成員變量private double bonus;//構造方法public Manager(){//super(); //默認存在}//帶全部參數的構造//父類 + 子類 所有的成員變量public Manager(String id, String name, double salary, double bonus) {//將共性傳遞給父類進行賦值super(id, name, salary);this.bonus = bonus;}//get和set方法//由于父類中已經存在了id,name,salary對應的get和set方法//可以直接通過對象來調用//所以這里就不需要再寫一遍了public double getBonus() {return bonus;}public void setBonus(double bonus) {this.bonus = bonus;}//重寫父類的work方法@Overridepublic void work(){System.out.println("經理管理其他人");}
}
package demo10;//廚師子類 繼承 員工父類
public class cook extends Employee{//不需要寫額外成員變量了//cook 需要的成員變量 已經抽取到父類中了//構造方法public cook() {//默認存在//super();}//父類 + 子類 所有的成員變量public cook(String id, String name, double salary) {//將共性傳遞給父類進行賦值super(id, name, salary);}//get和set方法//由于父類中已經存在了id,name,salary對應的get和set方法//可以直接通過對象來調用//所以這里就不需要再寫一遍了//重寫父類的work方法@Overridepublic void work(){System.out.println("炒菜");}
}
package demo10;public class test {public static void main(String[] args) {//全參構造創建經理對象并進行調用Manager m = new Manager("007","張三",15000,5000);//子類繼承了父類的get和set方法,所以可以直接調用System.out.println(m.getId()+","+m.getName()+","+m.getSalary()+","+m.getBonus());//調用方法m.work();//父類中被重寫的方法m.eat();//繼承自父類的方法System.out.println("-----------------");//空參構創建廚師對象并進行調用cook c=new cook();//通過set方法進行賦值c.setId("008");c.setName("李四");c.setSalary(10000);//子類繼承了父類的get和set方法,所以可以直接調用System.out.println(c.getId()+","+c.getName()+","+c.getSalary());//調用方法c.work();c.eat();}
}