- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章 类与对象 从本章开始,将深入讲解面向对象的思想和如何利用Java语言进行面向对象编程。类和对象是Java面向对象编程中非常重要的概念。本章首先讲述面向对象的基础知识,而后讲解Java类和对象的创建和使用,以及如何使用方法、包、访问控制等特性。 3.1 面向对象程序设计概述 面向对象程序设计(Object Oriented Programming,OOP)是当今主流的程序设计方式,取代了20世纪70年代的“过程化”程序设计。Java是纯面向对象的语言,用其进行面向对象的软件开发是非常方便、高效的。本节将在第1章的基础上,对面向对象的基础知识进行简单的介绍,主要包括面向对象程序设计的相关术语、面向过程与面向对象程序设计思想的对比、面向对象技术的优点等3方面的内容。 3.1.1 面向对象术语 OOP是与具体的语言无关的,无论在C++还是在Java中,OOP的思想是通用的。OOP利用特殊约定的词汇描述相关特性,尽管这些词汇与生活习惯相近,但是为避免歧义,在学习OOP前,仍需要了解OOP相关术语。这里只对其中最为重要的进行简要的介绍,包括:类、对象、接口、封装、继承。 3.1.1 面向对象术语 1.对象 前面的章节中曾详细地讲述了对象的概念。这里以现实世界中的一个对象为例,如一只猫、可以说猫具有许多属性(或状态),如猫名、猫龄和颜色;猫还具有各种行为,如睡觉、吃食和发出叫声。在OOP的世界里,对象也具有许多属性和行为。使用面向对象的技术,就可以以一只猫建立一个模型。 3.1.1 面向对象术语 2.类 类是OOP中最重要的术语。通常情况下,类被称为模板或者蓝本。对象就是由这些模板或者蓝本产生的。属于某个类的特性和行为总称为该类的成员。这里仍以上面提到的猫为例,猫的特性,包括猫名、猫龄和颜色称为类的属性,用变量表示;而猫的行为如玩、睡觉称为类的方法,用函数表示。 3.1.1 面向对象术语 3.继承 OOP的主要优点之一是使用继承实现类之间的共享数据和方法的机制。在我们日常生活中,儿子总会继承父亲的一些特性:所有种类的汽车都需要实现汽车的基本功能;所有种类的电脑都需要实现电脑的基本功能,诸如此类的例子很多。而这些现象,都可以使用继承来实现。新建的类称为子类,该类需要继承的类称为超类或者父类。 3.1.1 面向对象术语 4.接口 接口可以描述为类定义的模板,实现接口的类实现该模板。在猫的示例中,接口类似于猫的蓝图:通过蓝图可了解需要的部分,但并不一定提供关于这些部分的组装方法或工作原理的信息。 可将接口看作是用于将两个若没有接口便没有任何关系的类关联起来的“编程约定”。例如,多个程序员一起工作,每个程序员开发同一个应用程序的不同部分(类)。设计应用程序时,约定不同的类使用一组方法进行通信。因此,创建一个接口用以声明这些方法、方法的参数及其返回类型。任何实现此接口的类都必须提供这些方法的定义,否则将出现编译错误。 3.1.1 面向对象术语 5.封装 封装是OOP中另一个非常重要的概念,也称为数据隐藏。在完美的面向对象的设计中,对象被看作包含或封装功能的“黑匣子”。程序员应当能够在仅知道对象的属性、方法和事件的情况下与对象进行交互,而不需知道其实现的详细信息。此方法使程序员可以在更高的抽象层次上思考,并能提供可用于构建复杂系统的组织框架。同时利用封装可以进行成员访问控制。成员的详细信息对于对象外的代码是私有的和不可见的。 3.1.2 面向对象程序设计方法的优点 利用面向对象的思想求解问题,使人们的编程与实际的世界更加接近,所有的对象被赋予属性和方法,使编程更加富有人性化。同时利用OOP求解问题,具有更好的重用性、可扩展性、更易管理和维护。 3.1.2 面向对象程序设计方法的优点 1.可重用性 软件由各个模块组成,可重用性就是该软件的模块可以被重复利用,不仅用于该项目,还可用于其他项目。对于代码级,可重用性指类或者方法的重复使用,避免对于同一功能多次实现产生多余代码。可重用性是OOP的一个核心思想。OOP中的抽象、继承、封装等都可服务于可重用性。 利用可重用性构建程序,优点是显而易见,不仅减少工作量,提高工作效率;利用已有的模块进行开发,更能够提高程序质量。 3.1.2 面向对象程序设计方法的优点 2.可扩展性 可扩展性即软件或者程序能够很方便地进行修改和扩充。对于软件产品来说,修改和扩充是必不可少的,一是不断地修订保证程序的稳定;二是可以不断满足用户新的需求。由于继承、封装、多态等特性,面向对象方法可以设计出高内聚、低耦合的系统结构,使得系统更灵活,更容易扩展,而且成本较低。 3.1.2 面向对象程序设计方法的优点 3.易于管理和维护 面向过程的开发方法,都是以函数为基本单元。所以当开发项目不断扩大时,这样
您可能关注的文档
- Internet应用从入门到精通 作者 陈郑军 Internet网络系统与实践(第五章).ppt
- Internet应用从入门到精通 作者 陈郑军 Internet网络系统与实践(第一章).ppt
- Internet应用基础 作者 耿增民 第1章 网络与Internet基础知识.ppt
- Internet应用基础 作者 耿增民 第2章 Web及其浏览器.ppt
- Internet应用基础 作者 耿增民 第3章 电子邮件.ppt
- Internet应用基础 作者 耿增民 第4章 搜索引擎.ppt
- Internet应用基础 作者 耿增民 第5章 下载和存储Internet资源.ppt
- Internet应用基础 作者 耿增民 第7章 电子商务与网上购物.ppt
- Internet应用基础 作者 耿增民 第8章 网络多媒体.ppt
- Internet应用基础 作者 耿增民 第11章 网络安全.ppt
- Java面向对象程序设计 张亦辉 冯华 胡洁 第4章 继承与多态.ppt
- Java面向对象程序设计 张亦辉 冯华 胡洁 第5章 接口与内部类.ppt
- Java面向对象程序设计 张亦辉 冯华 胡洁 第6章 输入.ppt
- Java面向对象程序设计 张亦辉 冯华 胡洁 第7章 图形用户界面的实现.ppt
- Java面向对象程序设计 张亦辉 冯华 胡洁 第8章 Applet与应用程序.ppt
- Java面向对象程序设计 作者 梁燕来 程裕强 第1章 Java开发环境配置.ppt
- Java面向对象程序设计 作者 梁燕来 程裕强 第2章 面向过程编程.ppt
- Java面向对象程序设计 作者 梁燕来 程裕强 第4章 继承与多态.ppt
- Java面向对象程序设计 作者 梁燕来 程裕强 第5章 面向对象思想.ppt
- Java面向对象程序设计 作者 梁燕来 程裕强 第6章 异常处理.ppt
文档评论(0)