JAVA创建抽象类

一、什么是抽象类?

抽象类是指在普通类的结构里面增加抽象方法的组成部分。

抽象方法,是指没有方法体的方法,同时抽象方法还必须使用关键字abstract做修饰。

二、抽象类的使用原则

1)抽象方法必须为public或者protected(因为如果为private,则不能被子类继承,子类便无法实现该方法),缺省情况下默认为public 
2)抽象类不能直接实例化,需要依靠子类采用向上转型的方式处理; 
3)抽象类必须有子类,使用extends继承,一个子类只能继承一个抽象类; 
4)子类(如果不是抽象类)则必须覆写抽象类之中的全部抽象方法(如果子类没有实现父类的抽象方法,则必须将子类也定义为为abstract类。);


三、现在就可以清楚的发现: 
1)抽象类继承子类里面有明确的方法覆写要求,而普通类可以有选择性的来决定是否需要覆写; 
2)抽象类实际上就比普通类多了一些抽象方法而已,其他组成部分和普通类完全一样; 
3)普通类对象可以直接实例化,但抽象类的对象必须经过向上转型之后才可以得到。


四、抽象类中有构造方法么? 
由于抽象类里会存在一些属性,那么抽象类中一定存在构造方法,其存在目的是为了属性的初始化。 
并且子类对象实例化的时候,依然满足先执行父类构造,再执行子类构造的顺序。

 



你可能感兴趣的:(JAVA创建抽象类)