第五周

本周继续复习Java

static

 

 继承:

继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。

继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。

 

 

 

 

 

继承构造方法和this、super

1.继承中构造方法的访问特点是什么?

●子 类不能继承父类的构造方法,但是可以通过super调用

●子类构造方法的第一行, 有一个默认的super();

●默认先访问父类中无参的构造方法,再执行自己。

●如果想要方法文父类有参构造,必须手动书写。

 

复制代码
package demo3;

/**
 * ClassName: Employer
 * Package: demo3
 * Description:
 *
 * @Author: 20213923ysf
 * @Create: 2023/7/21 - 22:54
 */
public class Employer {
    private String id;
    private String name;
    private double salary;

    public Employer() {
    }

    public Employer(String id, String name, double salary) {
        this.id = id;
        this.name = name;
        this.salary = salary;
    }

    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 eat(){
        System.out.println("吃饭(吃米饭)");
    }
    public void work(){
        System.out.println("员工在工作");
    }
}
复制代码
复制代码
package demo3;

/**
 * ClassName: cook
 * Package: demo3
 * Description:
 *
 * @Author: 20213923ysf
 * @Create: 2023/7/21 - 22:54
 */
public class Cook extends Employer{
    public Cook() {
    }

    public Cook(String id, String name, double salary) {
        super(id, name, salary);
    }

    @Override
    public void work() {
        System.out.println("厨师正在炒菜");
    }
}
复制代码
复制代码
package demo3;

/**
 * ClassName: manger
 * Package: demo3
 * Description:
 *
 * @Author: 20213923ysf
 * @Create: 2023/7/21 - 22:54
 */
public class Manger extends Employer{
    private double bouns;
    //空参构造
    public Manger() {
    }
    //带全部参数的构造
    //父类+子类
    public Manger(String id, String name, double salary, double bouns) {
        super(id, name, salary);
        this.bouns = bouns;
    }

    public double getBouns() {
        return bouns;
    }

    public void setBouns(double bouns) {
        this.bouns = bouns;
    }

    @Override
    public void work() {
        System.out.println("经理管理其他人");
    }
}
复制代码
复制代码
package demo3;

/**
 * ClassName: Test
 * Package: demo3
 * Description:
 *
 * @Author: 20213923ysf
 * @Create: 2023/7/21 - 23:05
 */
public class Test {
    public static void main(String[] args) {
        Manger m = new Manger("2021","张三", 10000,8000);
        System.out.println(m.getId()+","+m.getName()+","+m.getSalary()+","+m.getBouns());
        m.eat();
        m.work();

        Cook c = new Cook("2022","李四",5000);
        System.out.println(c.getId()+","+c.getName()+","+c.getSalary());
        c.eat();
        c.work();
        c.setId("2023");
        c.setName("王五");
        c.setSalary(8000);
        System.out.println(c.getId()+","+c.getName()+","+c.getSalary());
        //输出
        /*2021,张三,10000.0,8000.0
        吃饭(吃米饭)
        经理管理其他人
        2022,李四,5000.0
        吃饭(吃米饭)
        厨师正在炒菜
        2023,王五,8000.0*/

    }
}
复制代码

 

posted @   漏网鲨鱼  阅读(5)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示