抽象类(抽象类和子类是一般和特殊的关系)
(鸡肋呦 : 食之无味,弃之可惜,抽象类不是要重点掌握的)
1.特征
不能new对象,必须使用abstract关键字定义
抽象类必须定义(只定义不实现)抽象方法,否则会失去意义(没有的话,不报错)
抽象类通常作为父类,定义共有的行为
2.抽象类的使用
抽象类的定义:权限修饰符 abstract class 类名 {}
抽象方法的定义:权限修饰符 abstract 返回值类型 方法名(参数列表) ;
3.抽象类特点
1、 用abstract修饰的类称之为抽象类。
2、 抽象类不能被实例化,因为抽象方法只有声明,无法用对象调用该方法。
3、 抽象类可以定义成员变量和静态变量。
4、 抽象类可以有构造方法,方便子类创建对象时给抽象类的属性赋值。
5、 抽象类中可以定义普通方法,也可以定义抽象方法(没有抽象方法也可以)。
6、 抽象类一定是一个父类,需要子类重写父类的抽象方法,然后在实例化使用。
1、 用abstract修饰的方法称之为抽象方法。
2、 抽象方法只有方法声明,没有方法体。
3、 子类要么实现父类的抽象方法,要么子类也是一个抽象类,否则编译失败。
4、 抽象方法只能存在于抽象类或接口中,不能存在于普通类中。
注意:abstract关键字不能和private、final、static关键字共存!