抽象函数的语法特征
抽象类的语法特征
抽象类的作用
抽象类就是用来被继承的
1、什么是抽象函数
只有函数的定义,没有函数体的函数被称为抽象函数;
abstract void fun();
2、什么是抽象类(一般称为基类)
abstract class Person{}
使用abstract定义的类被称之为抽象类;
(1)抽象类不能够生成对象;
(2)如果一个类当中包含有抽象函数,那么这个类必须被声明为抽象类;
(3)如果一个类当中没有抽象函数,那么在这个类也可以被声明为抽象类。(有时候让此类不能生成对象)
3、抽象类可以有构造函数么?
有
abstract class Person{ String name; int age; Person(){ System.out.print("Person的构造函数"); } void introduce(){ System.out.print(name+" "+age); } abstract void eat(); }
class Chinese extends Person{ Chinese(){//生成子类时一定要先调用父类的构造函数 super(); System.out.print("Chinese的构造函数"); } //复写Person抽象类中的抽象函数 void eat(){ System.out.print("用筷子吃饭"); } }
class Test{ public static void main(String args[]){ Person p = new Chinese(); p.eat(); } }
为什么要用抽象类?
有很多功能
比如,定义抽象类后,让继承此抽象类的子类必须实现抽象类中的抽象函数。