Java中抽象类的存在有什么意义 为什么要有抽象类( 二 )


但是又因为不同的子类具体实现不同,所以再父类中没办法给这些共同的方法提供一个具体的实现;
像这种方法,就应该使用新的技术:抽象函数来描述;
1.1.2.抽象函数与抽象类
抽象函数:
当一个类中,知道有某个功能,但是不确定这个功能该如何实现,就应该将这个方法定义为抽象函数;表示描述不清的功能;
书写格式:
抽象函数使用abstract关键字描述,直接写在函数的返回值类型前面;而且抽象函数没有函数体代码,连大括号都不能写;

Java中抽象类的存在有什么意义 为什么要有抽象类

文章插图


抽象类:
当一个类中存在抽象函数时,就表示这个类描述不清楚,这个类也应该定义为抽象类;
书写格式:
抽象类也是用abstract关键字描述,直接写在class关键字前面;


结论:
当多个不能相互继承的类具有相同的功能时,就需要将共同的信息向上抽取,放到公共的父类中;如果公共的父类只能描述所有子类都具有的功能,但描述不清功能的具体实现,就需要将该函数定义为抽象的,使用关键字abstract修饰;
如果一个类中出现了抽象的函数,说明这个类也是不具体的,应该定义为抽象类,使用abstract修饰;
Java中抽象类的存在有什么意义 为什么要有抽象类

文章插图