- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章深入面向对象编程.ppt.ppt
第5章 深入面向对象编程 除了基本的类和对象,Java语言的面向对象编程还包括抽象类、接口、内部类、包等高级特性。通过对这些高级特性的支持,Java语言全面实现了面向对象的编程。下面进一步深入介绍Java语言面向对象编程方面的知识。本章包括以下知识点。 类的封装、继承、多态; 抽象类与接口; 内部类及匿名内部类; 包的创建及使用。 5.1 类的封装、继承与多态 上一章介绍了有关类定义的基本知识。面向对象中的类还具有封装、继承与多态的特性,这也是面向对象编程所具有的重要特点。Java语言对类的封装、继承、多态均有很好的体现,下面分别进行介绍。 5.1.1 封装 封装是指隐藏对象的属性及实现细节,对外仅提供接口可见。封装实现了信息隐藏,有利于软件复用。这种技术带来的好处是达到了模块化的标准,从而提高了代码的复用程度。在某种程度上,封装也大大改善了软件开发的可维护性,降低了构建复杂软件系统的风险。 在Java语言中,对象的属性和方法均可以进行访问控制。使用前面介绍的访问控制修饰符public、private、protected、default,可以实现不同程度的信息封装。下面通过一个具体的示例来介绍Java语言中封装的实现。 5.1.2 继承 继承是指一个类是从另一个类派生而来,派生类自动具有了被继承类的所有特性。其中被继承的类称为“父类”,继承父类的类称为“子类”。继承可以使子类具有父类的各种属性和方法,而不需要再次编写相同的代码。继承也极大地促进了软件的复用,而且继承的形式可以更加复杂。Java语言中类继承的语法格式如下所示。 class ClassName extends SuperClassName { //类体 } 其中,参数class是关键字。参数Classname表示类名,可以由用户任意定义,但需要符合Java标识符的命名规范。参数extends是关键字,表示该类继承自其他类。参数SuperClassName表示被继承的父类的名字,可以由用户任意定义,但需要符合Java标识符的命名规范。 5.1.3 多态 多态是指对于一种服务功能,可以具有不同的实现方式,即多种形态。多态形象的描述了现实世界的复杂形态,使程序具有良好的扩展性。在继承的基础上,方法重载是实现多态的方式之一。 5.2 抽象类与接口 抽象类是Java语言中一种特殊的类,其中包含只进行了声明没有具体实现的抽象方法。而接口更像是一种特殊的抽象类,其中所有方法都只进行了声明没有具体实现。抽象类和接口有着相似之处,不过也有许多区别。下面分别对它们进行详细地介绍。 5.2.1 抽象类 抽象类是指包含了抽象方法的类。其中,抽象方法是一种只声明了方法名称,而没有指明方法体的方法。当需要表示对问题域进行分析、设计中得出的抽象概念时需要使用抽象类。抽象类比类的继承更高一层,是对类的抽象。抽象类拥有未实现的方法,不能被实例化,只能被继承扩展。Java语言中通常抽象类的语法格式如下所示。 abstract class ClassName { abstract ReturnType abstractMethodName(paramList); … //其他类成员 } 其中,参数abstract是关键字,表示此类为抽象类。参数class是关键字。参数Classname表示类名,可以由用户任意定义,但需要符合Java标识符的命名规范。类体中至少包含一个抽象方法。其中,参数abstract是关键字,表示此方法为抽象方法。参数ReturnType表示抽象方法的返回类型,为合法的Java数据类型。参数abstractMethodName表示抽象方法的名子,可以由用户任意定义,但需要符合Java标识符的命名规范。参数paramList表示抽象方法的参数列表。 5.2.2 接口 接口是面向对象编程中又一重要概念。在实际问题中,有些互不相关的类具有某种相同的行为,这时可以采用接口来定义这种相同的行为。接口只定义提供什么功能,而不定义功能的具体实现,这一点与抽象类有些类似。在Java语言中,不提供类的多继承,一个子类只能继承自一个父类。为了解决多继承的问题,在Java中可以采用接口来实现。一个类虽然不能同时继承多个类,却可以同时实现多个接口,从而可以解决现实中的多继承问题。有关接口的知识包括接口定义、接口实现,下面分别进行介绍。 1.接口定义 2.实现接口 5.3 内部类 内部类指的是在类的内部嵌套定义的类。内部类本身的结构同普通类没什么不同,只不过定义的位置是在另一个类的内部。定义的内部类同样可以在被外部引用。内部类可以只定义类体,没有名称,这就是匿名内部类。关于内部类的这些知识下面分别进行介绍。 5.3.1 内部类 根据内部类的概念,内部类定义的位置是在类的内部。在一个类的任
您可能关注的文档
最近下载
- 2024年中考数学热点探究十三 格点图中的作图与计算问题.pdf VIP
- 智慧树 知到 形势与政策(成都工业学院)章节测试答案.docx VIP
- T YYTC 008—2024 吉林长白山灵芝孢子粉.pdf VIP
- CJJT106-2010 城市市政综合监管信息系统技术规范.docx VIP
- 2025通辽科尔沁区招聘146名社区工作者笔试模拟试题及答案解析.docx VIP
- 城市更新培训课件.pptx VIP
- 4、路基高边坡施工专项方案.doc VIP
- 光伏发电项目采用的专业标准清单.doc VIP
- 《中国近现代史纲要》题库及参考答案.doc VIP
- 爱普生 Stylus pro 4400 4450 4800 4880 4880c 喷墨打印机英文维修手册.pdf VIP
文档评论(0)