类的继承

先创建一个People类

public class People {

    public String name;

    public int age;

    public boolean sex;

}

再创一个员工类来继承people类

public class Employee extends People{

    // 其他属性
    // 继承People之后自动拥有

    // 添加工资属性
    public double salary = 2000;

    public void updateSalary(double salary){

        this.salary += salary;
    }
}

分别创建waiter,cook,cashier类继承员工类

public class Cook extends Employee{

    public void makeFood() {
        System.out.println("做饭!");
    }
}
public class Cashier extends Employee{

    // Cashier自动拥有Employee类中的属性
    public void getMoney(){
        System.out.println("收钱!");
    }

}
public class Waiter extends Employee{

    // 添加一个方法
    public void printFood() {
        System.out.println("这里是菜谱");
    }

}

继承得到了员工以及人的所有属性,也可以在进行定义自己的属性和方法
继承会得到自己所有父类的属性和方法

再定义一个Boss类继承People

public class Boss extends People{

    // 开除员工
    public void fireWaiter(Waiter waiter){

        System.out.println(waiter.name+",你被开除了!");
    }

    public void fireEmployee(Employee employee) {

        System.out.println(employee.name+",你被开除了!");
    }
}

下面是一个MainClass类,添加main方法进行一些例子展示

public class MainClass {

    public static void main(String[] args) {


        // 从people中继承的属性和方法也传给了他的子类的子类
        Waiter waiter = new Waiter();
        waiter.name = "张三";
        waiter.age = 21;
        waiter.sex = true;

        Cashier cashier = new Cashier();
        cashier.name = "李四";
        cashier.age = 23;
        cashier.sex = true;
        System.out.println(cashier.name+"的工资是"+cashier.salary);
        cashier.updateSalary(1000);
        System.out.println(cashier.name+"的工资是"+cashier.salary);

        // Class A extends B 表示类A继承自类B
        // 子类拥有父类的属性和方法


        // 只能继承父类的方法  不能继承兄弟的属性和方法
        Boss boos = new Boss();
        boos.name = "老板";
        boos.age = 25;
        boos.sex = true;

        boos.fireWaiter(waiter);

        // 子类可以代替父类对象使用
        // 父类中的属性和方法 子类中都有
        // 子类可以代替父类对象使用 
        // 子类可以增加父类没有的属性和方法

        // 父类不能代替子类对象使用 父类没有子类的全部属性和方法
        boos.fireEmployee(waiter);
    }

}

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值