《Java程序设计案例教程》课件 项目6 垃圾分类程序——面向对象高级.pptx
《Java程序设计案例教程》
项目6面向对象高级
——垃圾分类程序
项目导入
●为增强大众环保意识、推动资源高效回收利用,我们借助Java语言开发垃圾分类程序。通过这个程序不能能帮助学生树立责任感与社会担当意识,更能凝聚各方力量,为建设美丽中国添砖加瓦。
学习目标
·掌握抽象类的定义与使用。
·掌握接口的定义与实现。
·掌握多态的使用。
●树立环保意识与社会责任感,共同建设美丽中国。(素养目标)
任务6.1抽象类
任务6.2接口
任务6.3多态
项目实施垃圾分类程序
项目实训宠物之家
目录CONTENTS
当定义一个类时,常常需要定义一些方法来描述该类的行为特征,但有时
这些方法的实现方式是无法确定的。针对这样的情况,Java允许在定义方法时不写方法体。不包含方法体的方法为抽象方法,抽象方法必须使用abstract关键字来修饰,示例如下:
当一个类中包含抽象方法,该类必须定义为抽象类。抽象类用abstract
关键字来修饰,示例如下:
abstractclassPet{
Java程序设计案例教程
abstractvoideat();
6.1抽象类
}
注意:抽象方法的类必须声明为抽象类,但抽象类可以不包含任
何抽象方法。另外,抽象类是不可以被实例化的。因为抽象类中有可能包含抽象方法,而抽象方法是没有方法体的,不可以被调用。如果想调用抽象类中定义的方法,则需要创建一个抽象类的子类,在子类中对抽象类的抽象方法进行实现。
Java程序设计案例教程
6.1抽象类
System.out.println(狗吃骨头);
}
J
【例6-1】实现抽象类中的抽象方法。
publicstaticvoidmain(String[]args){
classDogextendsPet{
abstractclassPet{
abstractvoideat();
publicclassExample6_1{
6.1抽象类
Dogdog=newDog();
voideat(){
ava柱序反计案例教程
dog.eat();
}
目录CONTENTS
接口是从多个相似类中抽象出来的规范,它不提供任何方法的具体实现
过程。接口体现的是规范和实现分离的设计思想。
接口只定义了应当遵循的规范,并不关心这些规范的内部数据和其功能
的实现细节,从而分离了规范和实现,增强了系统的可拓展性和可维护性。
因此,接口定义的是多个类共同的行为规范,这些行为是与外部交流的
通道,这就意味着接口里通常定义的是一组公用方法。
Java程序设计案例教程
6.2.1接口的概念
Java把接口当作一种特殊的类,每个接口都被编译为一个独立的字节码文件。
需要说明的是,一个接口可以有多个父接口,它们之间用英文逗号隔开。另外,
接口中的变量默认使用“publicstaticfinal”来修饰,表示全局静态常量;接口中定义的方法默认使用“publicstaticabstract”来修饰,表示静态抽象方法。
Java程序设计案例教程
在定义接口时,需要使用interface关键字来声明,语法格式如下:
[public]interface接口名[extends接口1,接口2,….]{
[public][static][final]数据类型常量名=常量值;
[public][static][abstract]返回值抽象方法名(参数列表);
6.2.2接口的定义与实现
」
由于接口中的方法都是抽象方法,因此不能通过实例化对象的方式来调用接口中
的方法。此时需要定义一个类,并使用implements关键字实现接口,同时实现接口中所有的抽象方法。一个类可以同时买现多个接口,这些接口在implements子句中要使用英文逗号隔开。声明接口的实现类的语法格式如下:
[修饰符]class类名[extends超类名][implements接口
1,接口2,….]
Java提供接口的目的是克服单继承的限制,因为一个类只能有一个父类,而一
个