抽象类:
①被abstract修饰的类,不能被实例化。
②可被子类继承,提供共性属性和方法。
③可声明为引用,更自然的使用多态。
④普通类可以继承抽象类,并实现抽象类中的方法
抽象方法:
①只有方法声明,没有方法实现
②子类继承抽象方法以后,必须全部重写抽象方法,否则子类还是抽象类
问题,父类为抽象类,子类继承父类后,为什么还要把抽象类的方法重写?那为什么不直接创建个方法?
抽象类 (用处,意义,实现方法) 抽象类专门用于被子类实现,因为没有继承和重写就无法使用多态。
有些方法父类里写不写完全没意义,因为每个子类都有不同的实现方法。但如果你的这个父类方法里内容为空也代表父类实现了该方法,而且也无法确保你的同事不会在这个父类方法下写一些别的东西。
因此,给方法添加关键字abstract,去掉{},给类添加关键字abstract来表示,该方法专门用于子类实现。
抽象类无法被实例化,而且继承的子类必须重写里面的抽象方法,如果这个子类无法实现,也可以把该子类也写为抽象类,把重写的方法照样写成抽象方法,交给该子类的子类实现。