抽象类与抽象类的继承

没有实际工作的方法, 我们可以把它设计成一个 抽象方法,而包含抽象方法的类我们称之为抽象类

我们将汽车的所加的燃料设计成一个抽象方法,将其放入类中,就构成了一个抽象类

public abstract class Car {

    private String carName;
    private String carNum;

    public String getCarName() {
        return carName;
    }

    public void setCarName(String carName) {
        this.carName = carName;
    }

    public String getCarNum() {
        return carNum;
    }

    public void setCarNum(String carNum) {
        this.carNum = carNum;
    }

    public Car() {

    }

    public Car(String carName,String carNum) {
        setCarName(carName);
        setCarNum(carNum);
    }
    //抽象类
    public abstract void addEnergy();
}

抽象类:包含抽象方法的类,我们把它叫做 抽象类
1、用关键字abstract进行修饰
2、在抽象类当中 可以有普通类的所有属性或者方法
3、和普通的类 不一样的地方就是,包含了抽象方法。
4、和普通的类 不一样的地方就是 他不能够被实例化
5、抽象类的主要作用就是用来被继承的
6、抽象类就是用来被继承的 所以:不能被final所修饰
7、抽象方法 也不能是私有的 或者是 static的

8、只要有一个类,继承了这个抽象类 那么 必须要重写抽象类当中的方法。

9、如果这个类,不想重写抽象类里面的抽象方法,那么此时这个类也可以设置为抽象类。

我们需要知道的是,只要类中有一个抽象方法,这个类就是抽象类。有抽象方法的类一定是抽象类,而抽象类不一定有抽象方法。

抽象类本身是无法实例化的,要想使用,必须 创建该抽象类的子类. 然后让子类重写抽象类中的抽象方法

一个类如果要继承抽象类中,必须重写抽象类中的抽象方法。

public class EleCar extends Car{
    public  EleCar(String carName,String carNum) {
        super(carName,carNum);
    }
    @Override//重写的抽象方法
    public void addEnergy() {
        System.out.println(getCarName() + "加电");
    }
}

public class GasCar extends Car {
    public  GasCar(String carName,String carNum) {
        super(carName,carNum);
    }
    @Override
    public void addEnergy() {
        System.out.println(getCarName() + "加柴油");
    }
}

public class OilCar extends Car{

    public  OilCar(String carName,String carNum) {
        super(carName,carNum);
    }
    @Override
    public void addEnergy() {
        System.out.println(getCarName() + "加汽油");
    }
}

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值