概念:
当编写一个类的时候 常常会定义一些方法,这些方法用以描述该类的行为,这些方法都有具体的方法体,但是在某种特殊情况下 某个父类只是知道应该包含什么方法,却不知道该方法是如何实现的,那么我们可以提供抽象方法,并将类声明为抽象类。
语法:
抽象类
[访问权限修饰符] abstract class 类名{
抽象方法
普通属性
普通方法
}
抽象方法
[访问权限修饰符] abstract 返回值类型 方法名(参数列表) 注:被abstract修饰的方法没有方法体
抽象类的特点:
1.抽象方法一定在抽象类中
2.抽象方法 和 抽象类都要用abstract修饰
3.抽象类有构造方法,但是不可以用new创建对象,因为可能会调用抽象方法,但是抽象方法没有方法体,调用没有意义
4.抽象类中的抽象方法要被使用,必须由其子类重写其所有的抽象方法,通过建立子类对象去调用重写后的方法,如果只重写了部分的抽象方法,进而继承了剩下的抽象方法,则子类也必须是抽象类
5.抽象类中可以包含抽象方法,也可以包含非抽象方法
当一个方法被抽象修饰后,他所在的类必须是抽象类
抽象类中可以不定义抽象方法(如果一个抽象类中不定义抽象方法,那么定义这个类的目的只有一个,就是不让类创建对象)