当父类的某些方法,需要声明,但是又不能确定如何实现时,就可以将该方法声明为抽象方法,那么这个类就叫做抽象类
用abstract 关键字来修饰一个类时,这个类就叫做抽象类
访问修饰符 abstract 类名{
}
用abstract 来修饰抽象方法时,这个方法就是抽象方法
访问修饰符 abstract 返回值类型 方法名(参数列表)//没有方法体
抽象类的价值更多的作用是在于设计,是设计者设计好后,让子类继承并实现抽象类;
注意事项
1、抽象类不能被实例化
2、抽象类可以没有抽象方法,还可以有可以已实现的方法
3、一旦一个类包含了抽象方法,这个类必须声明为抽象类
4、abstract 只能修饰类和方法,不能修饰属性或者其余的
5、抽象类可以拥有任意成员,其本质还是类
6、抽象类不能有主体,即无法实现
7、如果一个类继承了抽象类,那么该类必须实现抽象类的所有抽象方法,除非它自己也声明为抽象类
8、private static final 都不能用来修饰抽象方法