java基础干货之抽象类
什么是抽象类?
抽象:抽象就是从具体到通用的提取。
抽象类:就是使用关键字“abstract”来修饰的类,抽象类只是定义了共同特性的方法和属性,但是没有具体实现共同特性的方法。
具有一个抽象或多个抽象方法的类,本身就是被定义为抽象类。抽象类不仅可以有抽象方法,也可以有具体的方法,一个类中只要有一个抽象方法,那么这个类就是一个抽象类。
抽象类是可以继承的,如果子类没有实现抽象类的全部抽象方法,那么子类也是抽象类。如果实现了抽象类的全部方法,那么子类就不是抽象类。含有抽象方法的类一定是抽象类,但抽象类不一定含有抽象方法,也可以全部都是具体的方法。
抽象类不能被实例化,即不能使用关键字“new”来生成实例对象,但可以声明一个抽象类的变量指向具体子类的对象。
为什么要有抽象类?
抽象类的好处在于,当有的方法在父类中不想实现时,可以不用实现。