Java语言程序设计教程01章解析课件

上传人:我*** 文档编号:142099157 上传时间:2020-08-16 格式:PPT 页数:20 大小:226.50KB
返回 下载 相关 举报
Java语言程序设计教程01章解析课件_第1页
第1页 / 共20页
Java语言程序设计教程01章解析课件_第2页
第2页 / 共20页
Java语言程序设计教程01章解析课件_第3页
第3页 / 共20页
Java语言程序设计教程01章解析课件_第4页
第4页 / 共20页
Java语言程序设计教程01章解析课件_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《Java语言程序设计教程01章解析课件》由会员分享,可在线阅读,更多相关《Java语言程序设计教程01章解析课件(20页珍藏版)》请在金锄头文库上搜索。

1、1,2020/8/16,第1章 面向对象思想与Java运行环境简介,本章将介绍面向对象的思想和方法,面向对象程序设计的概念,对象的属性与相互关系,面向对象程序设计的特点,面向对象系统的开发过程,命令提示符下Java 程序的开发及NetBeans 6.0的下载与安装等。,1.1.1 面向对象方法是一种认知方法,其一是从一般到特殊的演绎方法。,其二是从特殊到一般的归纳方法。,面向对象方法提供了从一般到特殊的演绎方法,又提供了从特殊到一般的归纳方法。这种分类、归纳的方法在面向对象程序设计技术中是非常有用的,是一种很好的认知方法。,1.1 面向对象的思想和方法,2,2020/8/16,1.1.2 面向

2、对象与面向过程语言的比较,程序设计语言可大致分为两类:面向过程的程序设计语言和面向对象的程序设计语言。,它们之间可以从如下四个方面进行比较:,在面向过程的结构化程序设计中,模块是对功能的抽象,每个模块就是一个处理单位,它具有一定的输入、输出。而在面向对象的程序设计中,对象是包括数据和操作方法的整体,是数据和功能的抽象和统一。也可以这样说:对象包含了模块。,在面向过程的结构化程序设计中,过程是一个独立的实体,显式地为它的使用者所见,而且,对于相同的输入参数,在每次的调用中,其输出结果都是相同的。而在面向对象的程序设计中,方法属于对象,它不是独立存在的实体,而是对象功能的体现。,3,2020/8/

3、16,类型是数据的抽象,即定义了一组具有共同特征的数据以及可以操作这些数据的一组函数;但类所定义的数据集(包括数据和方法)比面向过程语言类型定义的数据集要复杂得多。,在面向过程的结构化程序设计方法中,其核心是逐步细化。这种自顶向下的设计方法是通过不断地在控制结构中增加细节来开发系统程序,它产生的模块往往为了满足特定的需要,其可重用性较差。,面向对象程序设计语言系统设计的方法以数据为核心来开发模块,同时一体化地考虑所有操作功能,抓住了程序设计中最不易变化的部分- -数据,因此对象常具有良好的可重用性,而且,类还引入了类的继承机制,有较好的可扩充性。,4,2020/8/16,1.1.3 面向对象方

4、法与软件的集成,在软件工程中,为了提高软件的生产效率,需要走类似硬件生产的道路,也就是软件生产要走“集成电路”的道路,也可称为软件IC。,软件IC应具备如下特征: 模块性好、独立性强:一个软件IC应该是可以独立存在的实体,应该不受或少受外界的影响,以便于能够较为自由地为各个不同的软件系统所应用。,通用性和可靠性好:软件IC是用于构造新的软件系统的基本元件,因此必须保证它具有很好的通用性和可靠性。,连接简单、使用方便:为了方便并安全地构建新的软件系统,要求软件IC之间连接要简单,使用起来更要方便。,5,2020/8/16,具有封装功能:软件IC可以使用户不必搞清它内部的细节,就能使用它。软件IC

5、内部能否实现代码的重用将直接影响软件系统的性能,因此还要具有继承机制。,类是构建同类对象的模板,满足了重用性的要求,类的继承机制满足了软件的可扩展性,每个对象的相互独立使它们之间连接方便。总之,面向对象程序设计语言的类及其对象完全可以满足软件IC的所有的要求。,1.2 面向对象程序设计的概念,1.2.1 对象(Object),在面向对象的编程思想中,可以这样定义对象:对象就是现实世界中某个具体物理实体在计算机逻辑中的映射和体现。,6,2020/8/16,使用软件对象来表示现实世界的物体。 例如,可以将现实世界中的狗表示为动画程序中的软件对象,也可以将现实世界中的汽车表示为一个虚拟训练汽车驾驶中

6、的一个软件对象。 此外,还可以使用软件对象来模型化抽象的概念,例如:在视窗系统中的一个事件(event)可以用来表示用户按下鼠标按钮的这一动作。,软件对象的每一个事态(状态)和所能做的每一件事情(行为),都是通过该对象中的变量和方法(过程)来表示和描述。,这些变量和方法被称为实例变量和实例方法,以区别类变量和类方法。,7,2020/8/16,在许多程序设计语言中,一个对象能够选择暴露它的变量给其它的对象,允许其它的对象窥视、甚至修改该变量。 与此相反,一个对象也可以隐藏某些方法,使其它对象不可见,禁止其它对象调用这些方法。一个对象对于其它对象是否能够存取它的变量,访问它的方法具有完全的控制权,

7、它还可以指定哪些对象可以进行存取访问。,将相关的变量和方法封装在一个软件包装中,这是一个简单而又很好的方法,它为软件开发者提供了两个好处:,其一是模块性,一个对象源代码的编写和维护与其它的源代码是完全独立的。 其二是信息的隐藏性,对象包含公用接口,其它的对象能够使用这个接口与该对象进行沟通,另一方面,对象还可以维护其私有信息和方法,而且它们可以任意改变而不影响那些依赖于某个对象的对象。,8,2020/8/16,1.2.2 消息(Message),消息是一个对象向其它对象发出执行某个操作的信息,是对象之间进行交互的手段。,一个消息一般包含三个部分:消息的目的对象(如:你的自行车);执行的方法名称

8、(如:换档);方法需要的参数(如:第三档)。这三个部分为接收消息的对象提供了足够的信息,其它的信息可以不需要。,一个对象的行为通过它的方法来表达,因此,消息的传递支持了对象之间所有可能的交互作用。,9,2020/8/16,1.2.3 类(Class),类是一个设计方案或是一个原型,它定义了对于某一特定类型的所有对象共同具有的数据和方法。,对象和类的描述看起来非常相似,但是它们有很大的不同。类只是表示一类对象的抽象,而非对象的本身;对象则是实际存在的、可以使用的实体。 对象提供了模块化和信息隐藏的好处,而类则提供了可以重复使用的便利。,1.2.4 继承(Inheritance),类的继承就是新的

9、类从已有类那里“获得”已有的状态和行为。从另一角度来看这个问题,已有类产生新类的过程就是类的派生。已有的类称之为父类或基类,新产生的类称为子类或派生类。,10,2020/8/16,1.2.5 多态性(Polymorphism),多态性就是一个名字,多种语义,或是相同的界面,多种实现。,重载表达了简单的多态性,使用较多的是方法的重载。方法重载是多个方法具有相同的方法名字,但是其方法参数的个数或参数的类型要不相同。,编译系统根据参数的不同可以在编译阶段就能确定应该调用哪个方法体,这种情况称为早期匹配或早期绑定(early binding),也称为静态多态; 而在程序运行时才能确定具体方法体的称为晚

10、期匹配或晚期绑定(lately binding),也称为动态多态。一般来说,早期匹配运行速度比较快,晚期匹配提供了灵活性和高度的问题抽象。,11,2020/8/16,函数重载强调的是函数名相同,函数参数的不同。C+中虚函数则强调的是单个界面和多个实现的版本,也就是函数名、函数参数的类型、顺序和个数都相同,但函数体却完全不同。这在系统编译过程中是无法确定的,只有系统在运行时动态地寻找所需要的函数体进行匹配。,Java语言除了具有方法重载多态之外,还具有用于实现动态多态的覆盖技术,较好地解决了面向对象语言对多态性方面的要求。,从JDK1.5起,Java提供了类型参数化技术,也就是“泛型”。泛型为类

11、的类型参数化提供了有效的支持,也使得应用更加安全。,12,2020/8/16,1.3 对象的属性与相互关系,1.3.1 对象的属性,对象的状态和行为是对象的重要属性。对象的状态又称为对象的静态属性,主要指对象内部所包含的各种信息,也就是变量。 对象的行为是对象的第二个属性,也称为对象的操作或方法,它主要表示对象的动态属性,方法的作用是设置或改变对象的状态。,对象的状态在类中用成员变量表示,而对象的行为在类中用成员方法来实现。,13,2020/8/16,1.3.2 对象的相互关系,当对象A是对象B的属性时,称为对象B包容对象A,这种关系就是包容关系。,当对象A是对象B的特例时,称对象A继承了对象

12、B,这种关系就是继承关系。,当对象A的引用是对象B的属性时,称对象A和对象B之间是关联关系,引用是指对象的名称、地址、句柄等可以获取或操纵该对象的途径。相对于对象本身,对象的引用所占用的内存空间要少得多,它只是找到对象的一条线索。,14,2020/8/16,1.4 面向对象程序设计的特点,1.4.1 资源的可重用性,资源的可重用性就是指一个软件项目中所开发的模块不仅局限于在这个项目中使用,还可以重复地使用在其它项目中,这就是资源的可重用性。,1.4.2 功能的可扩展性,功能的可扩展性是现代应用软件设计提出的又一个重要要求,即要求应用软件能够很方便地、很容易地进行扩充和修改。,1.4.3 系统的

13、可管理性,面向对象的开发方法用比过程和函数丰富且复杂得多的类作为构建系统的部件,使整个项目的组织更加合理、方便。,15,2020/8/16,1.5 面向对象系统的开发过程,面向对象开发过程以分为面向对象的分析(Object Oriented Analysis,OOA)、 面向对象的设计(Object Oriented Design,OOD)、 面向对象的实现(Object Oriented Programming,OOP)三个阶段。,1.5.1 面向对象系统的分析方法,面向对象分析的主要作用是明确用户的需求,用标准化的面向对象的模型规范地表述这一需求,最后形成面向对象的分析模型,即OOA模型。

14、面向对象的分析首先应该明确用户的需求,包括对用户需求的全面理解、分析和筛选,明确所要开发软件系统的职责界限,并进行各种可行性研究和确定资源、进度和预算等。,1.5.2 面向对象系统的设计方法,面向对象系统的设计将在OOA模型的基础上引入界面管理、任务管理和数据管理这三部分内容,进一步充实OOA模型。,16,2020/8/16,界面管理负责整个系统的人机交互界面的设计;任务管理负责处理系统资源分配的工作;数据管理负责系统与数据库的接口。以上三部分加上OOA模型代表的“问题逻辑”部分,构成了最初的OOD模型。,将OOD模型划分为问题逻辑、界面管理、任务管理和数据管理四个部分,其好处在于实现上的透明

15、性。,1.5.3 面向对象系统的实现方法,面向对象的实现就是具体的编码阶段,它主要包括:选择一种合适的面向对象的编程语言。用选定的语言编码实现详细设计步骤所得到的公式、图表、说明和规则等对软件系统各个类的详尽描述。将编写好的各个代码模块根据类的相互关系进行集成。 利用开发人员提供的测试样例和用户提供的测试样例,分别检验编码完成的各个模块和整个软件系统。,17,2020/8/16,1.6 命令提示符下的Java 开发环境,1.6.1 JDK的安装与设置,J2SDK也简称为JDK,是目前进行Java开发的重要工具,较新的版本为JDK1.6.*,用户可从sun公司的网站上免费下载。 JDK有三个版本

16、供用户选择,即标准版(standard edition)、企业版(enterprise edition)、微型版(micro edition)。注意要选择与操作系统对应的版本。 所下载的JDK文件是自解压文件,正确下载后,可以直接运行该文件,依照屏幕上的提示,逐步进行,即可完成JDK的安装。,18,2020/8/16,对于使用Windows操作系统的用户,需要对path和classpath两个变量进行设置。如果JDK的安装目录为C:jdk1.6, 则需将path设置到c:jdk1.6bin, 将classpath设置到c:jdk1.6jrelibrt.jar;.;”。,在Windows XP环境下,Java被安装在C:Prigram FilesJava文件夹下, 在Windows 7环境下, Java被安装在C:Prigram Files(x86)Java文件夹下。,也可在命令提示符下输入如下两条命令,但是每次打开命令提示符窗口都要进行设置。 path c:jdk1.6bin /本行指出Java命令所在的路径 set classpath

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号