抽象类的概述
抽象定义:
抽象是从多个事物中将共性的,本质的内容抽取出来。
抽象类:
JAVA中可以定义没有方法体的方法,该方法的具体实现由子类完成,该方法称为抽象方法,包含抽象方法的类就是抽象类。
抽象方法的由来:
多个对象都具备相同的功能,但是功能具体内容有所不同,那么在抽取的过程中,只抽取了功能定义,并未抽取功能主题,那么只有功能声明,没有功能主题的方法称为抽象方法。
抽象类和抽象方法必须用abstract关键字来修饰。
抽象方法只有方法声明,没有方法体,定义在抽象类中。
格式:修饰符 abstract 返回值类型 函数名(参数列表);
抽象类不可以被实例化,也就是不可以用new 创建对象,原因如下:
抽象类是具体事务抽取出来的,本身不是具体的,没有相应的实例。
而且抽象类即使创建了对象,调用抽象方法也没有意义。
抽象类通过其子类实例化,而子类需要覆盖掉抽象类中所有的抽象方法后才可以创建对象,否则子类也是抽象类。