一.抽象类的由来:
在将这个之前我们先来复习一下封装和继承:
我们发现在两个类中就会有很多重复的变量和方法体,那么就可以用继承来处理代码:
可是在不同类中work的行为似乎不一样吧
这时候就要介绍一下抽象类了
抽象类就是父类知道子类一定要完成某个功能,但是每一个子类完成的的情况是不一样,而子类每次用自己重写父类中的方法来满足自己 所需的功能,那么这个父类就是抽象类了
抽象方法:
抽象方法是没有方法体的(反正继承之后子类要进行重写,那么方法体也没有意义,也是规定不能有方法体的),只有方法签名,必须用abstract修饰.
而有抽象方法的类必须是抽象类,抽象类不一定有抽象方法.
一个子类必须要有抽象父类的所有方法否则只能为抽象类
抽象类不你能创建对象
而如果抽象类有方法体的话就会报错
实际操作:
在定义抽象类时候在public后加个abstract就可以了
public abstract class 名
而在子类继承时候一开始会出现报错是因为没有重写抽象类的方法,如果方法太多就会很麻烦,那么我们可以对准报错点alt+enter点击实现方法在去全选就可以快速生成重写方法了