- 1、本文档共48页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第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.易于管理和维护 面向过程的开发方法,都是以函数为基本单元。所以当开发项目不断扩大时,这样
您可能关注的文档
- 新Java程序设计教程 工业和信息化普通高等教育“十二五”规划教材 教学课件 段新娥 贾宗维 2_ chap9.ppt
- 新Java程序设计教程 教学课件 杨晓燕 java9.ppt
- 新Java程序设计教程 教学课件 杨晓燕 Java11.ppt
- 新Java程序设计教程 教学课件 张克军 陆迟 孙海伦 庞丽娜 第10章 网络程序设计.ppt
- 新Java程序设计教程 项目式 教学课件 李桂玲 P1 1 1程序的运行环境.ppt
- 新Java程序设计实例教程教学课件 刘志成 ch05_Java图形用户界面技术.PPT
- 新Java程序设计实例教程教学课件 刘志成 ch07_Java输入输出技术.PPT
- 新Java程序设计实验指导与习题解答 工业和信息化普通高等教育“十二五”规划教材 教学课件 李荣 段新娥 chap9.ppt
- 新Java程序设计实用教程 教学课件 耿祥义 张跃平 Java程序设计实用教程_第14章_Java网络编程.ppt
- 新Java程序设计实用教程 教学课件 耿祥义 张跃平 Java程序设计实用教程_第16章_Java Applet程序.ppt
最近下载
- 2024-2025学年全国中学生天文知识竞赛考试题库(含答案).pdf VIP
- 2024届福建省莆田市高三第二次教学质量检测二模生物试卷.doc VIP
- 电梯维修及维护人员的安全知识与技能培训课件.pptx VIP
- 小学新教育实验实施方案(详细).docx
- 23中英文双语单片机车辆防碰撞外文文献翻译:基于超声波与单片机嵌入式系统开发集成应用的汽车防撞系统设计.doc VIP
- 八年级数学上册《分式》教案教材分析.pdf VIP
- 大华DSS5000系列-客户端操作手册-.docx
- 2013款上汽通用别克君越_汽车使用手册用户操作图解驾驶指南车主车辆说明书电子版.pdf
- 人教版数学二年级下册全册教学课件(2023年新教材).pptx
- 越人歌-钢琴伴奏谱.pdf
文档评论(0)