1、抽象类:也是类,相比普通类而言,多了可以定义抽象方法
2、抽象方法 ?
就是有功能名字,没有功能实现。
3、抽象方法有什么用?
有时候,类中有一些功能不能确定具体怎么完成,就可以定义为抽象的方法
抽象和具体不是一定的:由需求,由客户决定
定义抽象类语法
abstract class 类名{
//0到多个抽象方法(特殊成员方法)
//0到多个 成员变量,成员方法,静态....
}
抽象方法的语法:
[访问修饰符] abstract 返回值类型的位置 方法名(参数列表);
注意点
1)抽象类不能被实例化(创建对象)--》无论有没有抽象方法
2)抽象类的抽象方法-对于子类型而言
a)抽象类:可选重写抽象方法
2、抽象方法 ?
就是有功能名字,没有功能实现。
3、抽象方法有什么用?
有时候,类中有一些功能不能确定具体怎么完成,就可以定义为抽象的方法
抽象和具体不是一定的:由需求,由客户决定
定义抽象类语法
abstract class 类名{
//0到多个抽象方法(特殊成员方法)
//0到多个 成员变量,成员方法,静态....
}
抽象方法的语法:
[访问修饰符] abstract 返回值类型的位置 方法名(参数列表);
注意点
1)抽象类不能被实例化(创建对象)--》无论有没有抽象方法
2)抽象类的抽象方法-对于子类型而言
a)抽象类:可选重写抽象方法
b)普通类:必须重写抽象方法
4、抽象类注意点:
1)、抽象类不能实例化(及时没有抽象方法),需要子类实例化
2)、一定存在子类,不然抽象类无意义
3)、抽象类不一定有抽象方法,但是有抽象方法一定是抽象类,没有抽象方法的抽象类,也不能实例化。
4)、abstract不能和final一起使用,矛盾了
5)、abstract不能和static一起使用,抽象功能针对成员方法(面向对象)