- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
不仅引入了javaio包中的类
《Java 基础教程(第3版)》 第6章 配合例子源代码一起使用 主要内容 6.1 接口 6.1.1 接口的声明与使用_1 6.1.1 接口的声明与使用_2 6.1.2 理解接口 6.1.3 接口的UML图 6.2 接口回调 6.2.1 接口变量与回调机制 6.2.2 接口与多态 6.2.3 abstract类与接口的比较 6.3 面向接口编程 例子4 6.4 小结 第 * 页 注意:开始用功了! Power point 制作:耿祥义 张跃平 接口与多态 Java不支持多继承性,即一个类只能有一个父类。单继承性使得Java简单,易于管理和维护。 为了克服Java单继承的缺点,Java使用了接口。 使用关键字interface来定义一个接口。接口的定义和类的定义很相似,分为接口的声明和接口体。 1.接口声明 接口通过使用关键字interface来声明,格式: interface 接口的名字 2.接口体 接口体中包含常量定义和方法定义两部分。 interface Printable { final int MAX=100; void add(); float sum(float x ,float y); } 3.接口的使用 接口由类去实现以便使用接口中的方法。 一个类可以实现多个接口,类通过使用关键字implements声明自己实现一个或多个接口。如果实现多个接口,用逗号隔开接口名。 如A类实现Printable和Addable接口: class A implements Printable,Addable 再比如Animal的子类Dog类实现Eatable和Sleepable接口: class Dog extends Animal implements Eatable,Sleepable 如果一个类实现了某个接口,那么这个类必须重写该接口的所有方法。 例子1 Computable.java ,China.java Japan.java ,Example6_1.java Java提供的接口都在相应的包中,通过import语句不仅可以引入包中的类,也可以引入包中的接口,例如import java.io.*;不仅引入了java.io包中的类,也同时引入了该包中的接口。 1.定义标准 可以将接口中的抽象方法理解为标准行为。 接口的目的是规定一些重要的方法,即将一些重要的方法封装在接口中,但接口只关心行为的结果,但不关心行为的具体动作,即接口中的方法都是抽象方法。 2.符合标准的类 当一个类实现了某个接口,那么该类必须要实现该接口规定的标准行为,即必须重写接口的抽象方法。那么该类创建的对象就具有了接口所规定的标准行为。当一个类实现了某个接口,那么称该类的实例(对象)是具有接口规定的标准行为的对象。 不同的类可以实现相同的接口,同一个类也可以实现多个接口。 表示接口的UML图和表示类的UML图类似,使用一个长方形描述一个接口的主要构成,将长方形垂直地分为三层。 第1层是名字层、第2层是常量层、第3层是方法层 。 图6.2是接口Creator的UML图。 图6.3是ClassOne和ClassTwo类实现Create接口的UML图。 接口回调是指:可以把实现某一接口的类创建的对象的引用赋给该接口声明的接口变量中,那么该接口变量就可以调用被类重写的接口方法。实际上,当接口变量调用被类重写的接口方法时,就是通知相应的对象调用这个方法。 Com com; ImpleCom object = new ImpleCom(); com = object; 例子2 Example6_2.java 由接口产生的多态就是指不同的类在实现同一个接口时可能具有不同的实现方式,那么接口变量在回调接口方法时就可能具有多种形态。 例子3中,Gymnastics类和School类都实现了ComputerAverage接口,但实现的方式不同。 程序运行效果如图6.8。 Example6_3.java 接口和abstract类的比较如下: 1.abstract类和接口都可以有abstract方法。 2.接口中只可以有常量,不能有变量;而abstract类中即可以有常量也可以有变量。 3.abstract类中也可以有非abstract方法,接口不可以。 面
您可能关注的文档
- STRVLM程序使用-南京航空航天大学.DOC
- SPC5x嵌入式工具链和ISO26262工程服务.PDF
- ST273是拟南芥绒毡层和小孢子发育的必需基因-PlantDiversity.PDF
- SWS快波睡眠FWS又称快速眼球运动睡眠-忻州职业技术学院.PPT
- SunSystems应用门户企业资源计划.PPT
- TRPV2激活对缺氧再灌注时体外培养星形胶质细胞神经生长因子释放.PDF
- Unit2RobotsⅠ单元教学目标技能目标SkillGoalsLearnliterary.DOC
- Use-Case20针对敏捷项目的扩展.PDF
- VLSI系统芯片级故障模拟算法和系统SysFsim.PDF
- TobinMarks-高分子科学与工程系.PDF
文档评论(0)