抽象类
抽象类和抽象方法
抽象方法
-
抽象方法:将共性的行为(方法)抽取到父类之后。由于每一个子类执行的内容是不一的,所以在父类中不能确定具体的方法体
该方法就可以定义为抽象方法
-
抽象类:如果一个类中存在抽象方法,那么该类就必须声明为抽象类
抽象方法的定义格式:
-
抽象方法的定义格式:
public abstract 返回值类型 方法名(参数列表);
-
抽象类的定义格式:
public abstract class 类名{}
抽象类和抽象方法的注意事项
-
抽象类不能实例化(创建对象)
-
抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类
-
可以有构造方法
-
抽象类的子类
要么重写抽象类中的所有抽象方法
要么是抽象类
抽象类和抽象方法的意义
-
疑问:
-
把子类中共性的内容抽取到父类之后
-
由于方法体不确定,需要定义为抽象。子类使用时需要重写
-
那么我不抽取到父类,直接在子类写不是更节约代码?
相当于让他们统一
总结
-
抽象类的作用是什么样的?
抽取共性时,无法确定方法体,就把方法定义为抽象的
强制让子类按照某种格式重写
抽象方法所在的类,必须是抽象类
-
抽象类和抽象方法的格式?
public abstract 返回值类型 方法名(参数列表);
public abstract class 类名{}
-
继承抽象类有哪些要注意?
-
要么重写抽象类中的所有的抽象方法
-
要么是抽象类
-