JAVA教程第1章(导学).ppt_第1页
JAVA教程第1章(导学).ppt_第2页
JAVA教程第1章(导学).ppt_第3页
JAVA教程第1章(导学).ppt_第4页
JAVA教程第1章(导学).ppt_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章 导学 本章提要 从面向过程到面向对象 Java语言概述 项目安全说明 本章知识要点 v从面向过程到面向对象 v对象、类和实体 v面向对象的软件开发 vJava语言历史和特性 vJava语言应用 v项目案例说明 1.1 从面向过程到面向对象 软件危机 v软件危机(Software Crisis)由于日益增长的软件系 统的复杂性和软件产业内部愈演愈烈的竞争,需要寻求软件 设计和开发的新途径 。 v为了克服这种要求带来的软件危机,必须解决以下问题: 1、在系统设计中,如何表现问题的真实实体? 2、如何以开放的界面(interface)设计系统? 3、如何保证模块(module)的可重用性(reusability)和可扩展性( extensibility)? 4、如何开发能够容忍(tolerant)未来可能的变化模块? 5、如何提高软件的生产力和减少软件开销? 6、如何管理进度表? 7、如何提高软件质量? 8、如何将软件开发过程工业化? 软件质量评估指标 v对于一个软件,评估其质量的因素包括: 正确性(Correctness) 可维护性(Maintainability) 可重用性(Reusability) 开放性(Openness)和可解释性(Interpretability) 可移植性(Portability) 安全性(Security) 完整性(Integrity) 用户友好性(User friendliness) v面向过程的设计思路就是 首先分析问题的步骤: 1、开始游戏, 2、黑子先走, 3、绘制画面, 4、判断输赢, 5、轮到白子, 6、绘制画面, 7、判断输赢, 8、返回步骤2, 9、输出最后结果。 把上面每个步骤用分别的函 数来实现,问题就解决了。 五子棋 v面向对象的设计思路就是将问题分解为三 个对象,: 1、玩家,黑白双方,其行为是相同的 2、棋盘系统,负责绘制画 3、规则系统,负责判定诸如犯规、输赢等 第一类对象(玩家对象)负责接受用户输 入,并告知第二类对象(棋盘对象)棋子 布局的变化,棋盘对象接收到了棋子的变 化就要负责在屏幕上面显示出这种变化, 同时利用第三类对象(规则系统)来对棋 局进行判定。 蛋炒饭碟头饭 面向过程与面向对象的比较 方面面向过程(OP)面向对象(OO) 思想分析问题,划分为多个步 骤,用函数实现 分析问题,划分为多个功 能,并用多个对象实现 构成公式程序=算法+数据程序=对象+消息。 特点基于算法,过程驱动基于对象,事件驱动 对比可扩展性差可扩展性好 对程序员要求要求素质高简单 v总之,面向过程和面向对象的区别,在于分析方式不同,最 终导致了编码方式的不同。 面向对象 v对应于软件开发的过程,面向对象(OO)衍生出3个概念: OOA、OOD和OOP 采用面向对象进行分析的方式称为OOA 采用面向对象进行设计的方式称为OOD 采用面向对象进行编码的方式称为OOP v面向对象程序设计的基本思想 把数据看作程序开发中的基本元素,并且不允许它们在系统中自由 流动。将数据和操作这些数据的函数紧密的连结在一起,并保护数 据不会被外界的函数意外的改变。 允许我们将问题分解为一系列实体这些实体被称为对象( object),然后围绕这些实体建立数据和函数。 面向对象的程序设计 v什么是面向对象程序设计(OOP) ? 将一个问题分解为一些相互关联的子集,每个子 集内部都包含了相关的数据和函数。 以某种方式将这些子集分为不同等级,而一个对 象就是已定义的某个类型的变量。 定义了一个对象,就隐含的创建了一个新的数据 类型。 面向对象程序设计特性 v程序设计的重点在于数据而不是过程; v程序被划分为所谓的对象; v数据结构为表现对象的特性而设计; v函数作为对某个对象数据的操作,与数据结构紧密的结合在 一起; v数据被隐藏起来,不能为外部函数访问; v对象之间可以通过函数沟通; v新的数据和函数可以在需要的时候轻而易举的添加进来; v在程序设计过程中遵循由下至上(bottom-up)的设计方法 。 面向对象的相关概念 v对象(Object)、类(Class) 和实体 面向对象是现实世界模型的自然延伸。 现实世界中任何实体都可以看作是对象。 对象之间通过消息相互作用。 现实世界中任何实体都可归属于某类事物,任何对象都是某一类事 物的实例。 类和对象的例子 v水果类:桔子、苹果、雪梨 v动物类:人、狗、猫 v请你举例? 1.2 Java语言概述 Java语言历史及特性 vJava语言的诞生 1991.4,Sun Microsystems公司的James Gosling博士领导的绿色计 划(Green Project)着手于在各种消费性电子产品上运行的一种分布 式系统结构研究。该项目开发语言引出了Java前身oak(橡树),并于 17个月后完成。 1994年下半年,Internet的迅猛发展,首个浏览器Mosaic出现,工 业界对适合在网络异构环境下使用的语言有一种非常急迫的需求, Java创始人Games Gosling对原有oak进行改造,Java在1995年的3月 23日诞生了! Java语言历史及特性 vJava语言发展的第一个阶段(1995-1998 )JDK 1.0/1.1.x 1995.5.23 在SunWorld95上正式发布Java和HotJava浏览器。 1996.1.23 发布了JDK1.0,包括两部分:运行环境(即JRE)和开 发环境(即JDK)。在运行环境中包括了核心API、集成API,用户界面 API,发布技术,Java虚拟机(JVM)五个部分。而开发环境还包括了 编译Java程序的编译器(即javac)。 1997.2.18 发布了JDK1.1 ,JVM增加了JIT(即时编译)编译器 1998年是Java开始迅猛发展的一年。Sun发布了 JSP/Servlet、EJB 规范,并将Java分成了J2EE、J2SE和J2ME。 Java语言历史及特性 vJava语言发展的第二个阶段(1998-2004)JDK 1.2-1.4 1998.12.4 发布JDK1.2(Java2), 对Java进行了很多革命性的变化 ,并沿用至今。 JDK1.2将它的API分成了三大类:核心API (Java 核心类库)、可选API(扩充API)、特殊API(满足特殊要求的API )。增加许多新的特性,其中包括Swing、多线程、集合类等。 2000.5.8 发布JDK1.3,主要对一些类库(如数学运算、新的 Timer API等)、在JNDI接口方面增加了一些DNS的支持、增加了JNI 的支持,这使得Java可以访问本地资源了、支持XML以及使用新的 Hotspot 虚拟机。 2002.2.13 发布了JDK最为成熟的版本JDK1.4。主要对Java的性能 进行了改进,使JDK1.4的性能有了质的飞跃。 Java语言历史及特性 vJava语言发展的第三个阶段(2004-至今 )JDK 1.5- 1.7 2004.10 发布了JDK1.5,并将JDK1.5改名为J2SE5.0。主要解决 Java的复杂性问题。并增加了诸如泛型、增强的for语句、可变数目 参数、注释(Annotations)、自动拆箱(unboxing)和装箱等功能。 推出EJB3.0规范, JSF(类似于ASP.NET服务器控件)。 2006.12.11 发布了J2SE6.0(专为Vista设计),在性能、易用性方 面得 到了前所未有的提高,而且还提供了如脚本、全新的API( Swing和AWT等API已经被更新)的支持。 2007.9 发布J2SE7.0, 新增了Java API,以及相当多的新功能如支 持拖放、Java interface definition language (IDL)、Java servlets、Javadoc doclets、Java Virtual Machine

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论