05面向对象高级程序设计解读
5.3 抽象类和抽象方法 当一个类的定义完全表示抽象的概念时,它不应该被实例化为一个对象。例如Java中的Number类就是一个抽象类,它只表示数字这一抽象概念,只有当它作为整数类Integer或实数类Float等的父类时才有意义。 定义一个抽象类的格式如下: abstract class abstractClass{ …… } 由于抽象类不能被实例化,因此下面的语句会产生编译错误: new abstractClass(); 抽象类中可以包含抽象方法,为所有子类定义一个统一的接口,对抽象方法只需声明,而不需实现,因此它没有方法体。其格式如下: abstrac returnType abstractMethod([paramlist)); 5.3 抽象类和抽象方法 【例5-8】使用abstract的另一例子 abstract class AA{ abstract void callme( ); void metoo( ){ System.out.println(InsideAs metoo() method); } } class BB extends AA{ void callme( ){ System.out.println(Inside Bs callme() method); } } public class AAbstract{ public static void main(String args[]){ AA cc=new BB(); //cc为上转型对象 cc.callme(); cc.metoo(); } } 第5章 面向对象高级程序设计 5.1 继承 5.2多态性 5.3 抽象类和抽象方法 5.4接口 5.5内部类和匿名类 5.4 接口 5.4.1接口声明 5.4.2使用接口的优点 5.4.1接口声明 从本质上讲,接口是一种特殊的抽象类 只包含常量和方法的定义,而没有变量和方法的实现。 通过接口使得处于不同层次,甚至互不相关的类可以具有相同的行为。 接口其实就是方法定义和常量值的集合。 5.4.1接口声明 Java 不支持多继承性,即一个类只能有一个父类。单继承性使得Java类层次简单,易于程序的管理。为了克服单继承的缺点,Java使用了接口,一个类可以实现多个接口。接口的定义和类的定义很相似,分为接口声明和接口体两部分。 1、 接口声明 我们曾使用class关键字来声明类,接口通过使用关键自interface 来声明。完整的接口定义格式如下: [public] interface interfaceName [extends listOfSuperInterface]{ …… } 其中public修饰符指明任意类均可以使用这个接口,缺省情况下,只有与该接口定义在同一个包中的类才可以访问这个接口。extends子句与类声明中的extends子句基本相同,不同的是一个接口可以有多个父接口,用逗号隔开,而一个类只能有一个父类。子接口继承父接口中所有的常量和方法。 通常接口名称以able或ible结尾,表明接口能完成一定的行为,例如Runnable、Serializable。 5.4.1接口声明 2、 接口体 接口体中包含常量定义和方法定义两部分。在接口中定义的常量均具有public、static和final属性。其格式如下: returnType methodName([paramlist]); 接口中只能进行方法的声明,而不提供方法的实现,所以,方法定义没有方法体,且用分号(;)结尾,在接口中声明的方法具有public和abstract属性。另外,如果在子接口中定义了和父接口同名的常量,则父接口中的常量被隐藏。 例如: interface Summaryable { final int MAX=50; // MAX具有public、static、final属性 void printone(float x); float sum(float x ,float y); } 上面这段程序可以以Summaryable.java来保存,也可以写入其它Java程序中。 5.4.1接口声明 3、接口的使用 一个类通过使用关键字implements 声明自己使用(或实现)一个或多个接口。如果使用多个接口,用逗号隔开接口名。如 class Calculate extends Computer implements Summary, Substractabl
您可能关注的文档
- 05第7章:表的基本操作解读.ppt
- 基于模糊证据理论的数据融合算法研究文献综述精要.doc
- 05第五章_汽轮机抽汽系统解读.doc
- 报纸、杂志排版经验讲述.pptx
- 抵制校园欺凌讲述.pptx
- 抵扣凭证审核检查系统讲述.ppt
- 报销票据粘贴方法讲述.ppt
- 05训诂学的术语解读.ppt
- 抱怨客户处理应对讲述.ppt
- 基于混沌数列变换的图像加密算法精要.doc
- 2025-2026学年科普版七年级下册英语Unit7 Being a Smart Shopper素养测评卷(含答案).docx
- 2025-2026学年科普版七年级下册英语Unit10 Lending a Helping Hand素养测评卷(含答案).docx
- 2025-2026学年科普版七年级下册英语Unit11 Rules Matter素养测评卷(含答案).docx
- 2025-2026学年科普版七年级下册英语Unit12 Better Together素养测评卷(含答案).docx
- 2026年中考英语语法选择专题训练(含答案).docx
- 2026中考语文二轮学思并重,涵养君子之德论语十二章、虽有佳肴、大道之行也.docx
- 中考文言文常见文化常识梳理.docx
- 中考语文二轮:内修君子德外尽忠臣心诚子书出师表修身立德主题学习.docx
- 中考语文二轮:不一样的求学路一样的成长梦送东阳马生序劝学主题学习.docx
- 中考语文二轮:《陋室铭》《爱莲说》托物寓意主题学习.docx
最近下载
- 《2025年新能源充电桩超快充技术政策支持分析》.docx
- BIC模型话术应用.pptx VIP
- AI赋能人力资源管理—找到企业内第一块AI“试验田”.pptx VIP
- 旅行社研学旅行指导师操作研学旅行指导师实务第五章39课件.pptx VIP
- 《老年社会工作》全套教学课件.pptx
- 施工总进度计划与施工及网络图.docx
- 敌草快中毒的护理.pptx VIP
- 诸子百家课件PPT.pptx VIP
- 《研学旅行指导师实务》课件——第6章 基(营)地研学课程操作.pptx VIP
- 北师大版必修二 Unit 6 The Admirable Lesson 3 The superhero behind superman课件.pptx VIP
原创力文档

文档评论(0)