《JAVA语言程序设计》课程教学课件(PPT讲稿)J06_接口与多态

第6章接口与多态 王绍卿
1 第6章 接口与多态 王绍卿

导读 主要内容 接口 ·接口回调 ● 面向接口编程 难点 ·面向接口编程 2025/4/2
2025/4/2 2 导读

现实世界中的接口 每种USB设备的内部结构都不相同, 可以把鼠标、U盘、摄像头都插在 USB接口上,而不用担心哪个USB 接口是专门插哪个USB设备的
现实世界中的接口

§6.1接口 接口(nterface)是Java所提供的另一种重要功 能,它的结构与抽象类非常相似。接口本身也 具有数据成员与抽象方法。 使用接口是为了解决Java语言中不支持多重 继承的问题。 接口与抽象类的区别: ·接口的数据成员必须初始化; ·接口中的方法必须全部都声明为abstract的, 也就是说,接口不能像抽象类一样拥有一 般的方法,而必须全部是抽象方法。 2025/4/2
2025/4/2 4 §6.1 接口 接口(Interface)是Java所提供的另一种重要功 能,它的结构与抽象类非常相似。接口本身也 具有数据成员与抽象方法。 使用接口是为了解决Java语言中不支持多重 继承的问题。 接口与抽象类的区别: • 接口的数据成员必须初始化; • 接口中的方法必须全部都声明为abstract的, 也就是说,接口不能像抽象类一样拥有一 般的方法,而必须全部是抽象方法

§6.1.1接口的声明与使用 [public]interface接口名称[extends父接口名列表] [public][static][final]数据类型成员变量名=常量; [public][abstract]返回值的数据类型方法名(参数表): } interface USB public void work;/USB设备工作方法 public void stop(;USB设备停止工作方法
5 §6.1.1

§6.1.1接口的声明与使用 接口的使用 class类名称implements接口名 表 class Mouse implements USB{ public void stop(){ System.out.println("我就不move、"+"我就不点"); public void work() System.out.println("我move、"+"我点");
6 §6.1.1 接口的使用 class 类名称 implements 接口名 表 { . } class Mouse implements USB { public void stop() { System.out.println("我就不move、 " + "我就不点"); } public void work() { System.out.println("我move、" + "我点"); } }

§6.1.1接口的声明与使用 接口的使用 class类名称implements接口名 表 class Camera implements USB public void stop(){ System.out.println("我不能看到你了n"); } public void work(){ System.out.println("我能看到你");
7 §6.1.1 接口的使用 class 类名称 implements 接口名 表 { . } class Camera implements USB { public void stop() { System.out.println("我不能看到你了\n"); } public void work() { System.out.println("我能看到你"); } }

§6.1.1接口的声明与使用 接口的使用 class类名称implements接口名 表 { 类通过使用关键字implements)声明自己实现一个或多个接口 如果实现多个接口,则用逗号隔开接口名. class A implements Printable,Addable class Dog extends Animal implements Eatable,Sleepable 如果一个类实现了某个接口,那么这个类必须重写该接口 的所有方法
8 §6.1.1 接口的使用 类通过使用关键字implements声明自己实现一个或多个接口 如果实现多个接口,则用逗号隔开接口名. class A implements Printable,Addable class Dog extends Animal implements Eatable,Sleepable class 类名称 implements 接口名 表 { . }

§6.1.1接口的声明与使用 Java提供的接口都在相应的包中,通过importi语句不仅可以 引人包中的类,也可以引入包中的接口,例如, import java.io.*; 2025/4/2
2025/4/2 9 §6.1.1 Java import import java.io.*;

接口的实现与引用 ■一个类实现一个接口应注意的问题: ●如果实现某接口的类不是abstract的抽象类,则在 类的定义部分必须实现指定接口的所有抽象方法。 ●一个类在实现某接口的抽象方法时,必须使用完全 相同的方法头。 ●接口中抽象方法被指定为public,.所以类在实现方 法时,必须显示地使用public修饰符。 ■接口可以作为一种引用类型来使用,可以声明 接口类型的变量或数组,并用它来访问实现该 接口的类的对象
接口的实现与引用 ◼一个类实现一个接口应注意的问题: ⚫如果实现某接口的类不是abstract的抽象类,则在 类的定义部分必须实现指定接口的所有抽象方法。 ⚫一个类在实现某接口的抽象方法时,必须使用完全 相同的方法头。 ⚫接口中抽象方法被指定为public,所以类在实现方 法时,必须显示地使用public修饰符。 ◼接口可以作为一种引用类型来使用,可以声明 接口类型的变量或数组,并用它来访问实现该 接口的类的对象
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J07_数组与枚举.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J08_内部类与异常类.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J09_常用实用类.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J10_输入、输出流.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J11_JDBC操作Derby数据库.ppt
- 《编译原理》课程教学课件(PPT讲稿)cha2 文法和语言(文法实例小C语言).ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha1 引论 修订.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha2_1 文法和语言——讲授 修订.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha2_2 文法和语言_短语直接短语句柄——讲授.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha3 词法分析 修订 讲授.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha3 词法分析 阅读.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha4 自顶向下语法分析方法.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha5 自底而上语法分析.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha6 LR分析 修订教材页码.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha7-8 语法制导翻译和中间代码生成 修订增加继承属性简介.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha10_1 代码优化 讲授.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha10_2 代码生成 讲授.ppt
- 《编译原理》课程教学资源(习题答案)编译原理习题答案,第二版,清华.pdf
- 《编译原理》课程教学课件(PPT讲稿)第一章引言.ppt
- 《编译原理》课程教学课件(PPT讲稿)运行时存储空间组织.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J05_子类与继承.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J04_类与对象.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J03_运算符、表达式和语句.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J03_数据编码.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J02_初识对象和简单数据类型.ppt
- 山东理工大学:《数据结构》课程教学资源(数据结构自编习题集).doc
- 《数据结构》课程教学资源(参考资料)数据结构实验指导书.doc
- 《数据结构》课程教学资源(参考资料)线索二叉树提高.ppt
- 《数据结构》课程教学资源(参考资料)数据结构学习方法.doc
- 清华大学出版社:《数据结构基础》课程教材书籍PDF电子书(C语言版,第2版,Ellis Horowitz Sartaj Sahni 著,Susan Anderson-Freed 朱仲涛 译).pdf
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第8章 AutoCAD绘制机械装配图.ppt
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第7章 AutoCAD绘制机械零件图.ppt
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第6章 AutoCAD绘制标准件与常用件.ppt
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第5章 AutoCAD绘制机械图样.ppt
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第4章 AutoCAD尺寸标注.ppt
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第3章 AutoCAD绘制形体视图.ppt
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第2章 AutoCAD绘图平面图形.ppt
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第1章 AutoCAD设计基础.ppt
- 《微机技术与仪器系统设计》课程教学资源(芯片手册)8259A-中断控制器.pdf
- 《微机技术与仪器系统设计》课程教学资源(芯片手册)增强型51,单片机12C5410.pdf
