抽象类
从具体的事物抽出,概括出他们共同方向,本质属性与关系等,而将个别的,非本质的方面,属性
与关系舍弃,这种思维的过程称之为抽象。
抽象类的概念
在面对对象的概念中,所有的对象都是通过类来抽绘的,但反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这类就是抽象类。
抽象类的特性
1.抽象类不能被实例化
2.由于抽象类不能实例化对象,所有抽象类必须被继承,才能被使用
3.在java中抽象类表示的是一种继承关系,一个类只能继承一个抽象类,而一个类只能继承一个抽象类,而一个类可以实现多个接口。
抽象类的关键字abstract不可以和哪些关键字共存?
private:相互矛盾
final:无法重写
static:一旦加上就可以通过类名,直接访问,抽象方法
无方法,无意义。
抽象
抽象类vs普通类
抽象类不能被实例化
但可以创建一个引用变量,其类型是一个抽象类,指向非抽象类的实例。
普通类可以被实例化。
抽象方法和普通方法
抽象方法无方法体
普通方法有方法体
抽象类里面可以写普通方法
抽象类里面可以写普通方法
抽象类方法与抽象的使用
A 抽象类中可以没有抽象方法,但包含了抽象方法的类,就必须定义为抽象类。
B 没有抽象类可以有非抽象的构造方法,也没有抽象静态方法
C 抽象类可以有非抽象方法子类必须被定义为抽象类
D 如果子类没有父类的所有抽象方法,子类必须被定义为抽象类
抽象类的构造函数,是由子类的supe语句来调用,用于给抽象类中成员初始化。
java抽象类可以包含main方法,它只是一个静态方法,你可以使用main方法来执行。
(会修改的,欢迎各位大哥前来指点!!!!!!)