专题十二: JAVA程序设计语言(软设)

上传人:xins****2008 文档编号:110852827 上传时间:2019-10-31 格式:DOC 页数:30 大小:306KB
返回 下载 相关 举报
专题十二: JAVA程序设计语言(软设)_第1页
第1页 / 共30页
专题十二: JAVA程序设计语言(软设)_第2页
第2页 / 共30页
专题十二: JAVA程序设计语言(软设)_第3页
第3页 / 共30页
专题十二: JAVA程序设计语言(软设)_第4页
第4页 / 共30页
专题十二: JAVA程序设计语言(软设)_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《专题十二: JAVA程序设计语言(软设)》由会员分享,可在线阅读,更多相关《专题十二: JAVA程序设计语言(软设)(30页珍藏版)》请在金锄头文库上搜索。

1、软件设计师(原高级程序员)复习资料专题十二: JAVA程序设计语言Java语言简介:背景1991年 ,SUN MicroSystem公司的 Jame Gosling、 Bill Joe等人 ,在电 视、控制烤面包箱等家用消费类电子产品上进行交互式操作的开发,开始时是使用C+语言,但是,后来发现C+在某些方面并不能很好的满足设计者的需要,从而考虑自行设计一门新的语言,这种新的语言并不局限于扩充语言机制本身,而是更注重语言所运行的软硬件环境。主要是可以使用其建立一个系统,这个系统运行于一个巨大的、分布的异构网络环境中,完成各种电子设备之间的通信与协同工作。基于这种思想而开发了一个名为Oak 的 (

2、即一种橡树的名字 )新语言。Java语言简介Oak先是被用于家电控制中,可通过手持设备控制家电。在当时并没有引起人们的注意 ,直到1994年下半 年 ,Internet的迅猛发展 ,环球信息网 WWW的快速增长 ,促进了 Java语言研制的 进展 使得它逐渐成为 Internet上受欢迎的开发与编程语言 。用java编写的Applet应用小程序能够嵌入到网页中运行,而实现声音、动画等功能。同时,在一般的应用程序设计方面也不逊色,完全可以用面向对象的技术与方法进行开发,符合最新的软件开发规范的要求。由于oak已经被注册,所以,最终更名为java。Java对软件开发技术的影响 工业界不少人预言 :

3、Java语言的出现 ,将会引起一场软件革命 ,这是因为 传统的软件往往都是与具体的实现环境有关 ,换了一个环境就需要作一番改动 ,耗 时费力 ,而 Java语言能在执行码 (二进制码 )上兼容 ,这样以前所开发的软件就 能运行在不同的机器上 ,只要所用的机器能提供 Java语言解释器即可。 Java对软件开发技术的影响重要体现在以下四个方面:1、软件的需求分析 :可将用户的需求进行动态的、可视化描述 ,以提供设计者更加直观的要求。用户的各色各样的需求都可以用 Java语言描述清楚。2、软件的开发方法 :由于 Java语言的面向目标的特性 ,所以完全可以用 O-O 的技术与方法来开发 。3、Ja

4、va语言的动画效果。利用 WWW提供的巨大 动画资源空间 ,可以共享全世界的动态画面的资源。4、软件最终产品 :用 Java语言开发的软件可以具有可视化、可听化、可操 作化的效交互、动画与动作 ,要它停就停 ,要它继续就继续 ,而这是在电影与电视播放过程中难以做到的。Java是一个广泛使用的网络编程语言 ,它是一种新的计算概念。首先 ,作为一种程序设计语言 ,它简单、面向对象、不依赖于机器的结构、具有可移植性、安全性、并且提供了并发的机制、具有很高的性能。其 次 ,它最大限度地利用了网络 ,Java的小应用程序 (applet)可在网络上传输而 不受 CPU和环境的限制。另外 ,Java还提供

5、了丰富的类库 ,使程序设计者可以很 方便地建立自己的系统。 Java的特点:简单性 Java语言衍生自C+,是一种面向对象的语言 ,它通过提供最基本的方法来完成指定的 任务 ,只需理解一些基本的概念 ,就可以用它编写出适合于各种情况的应用程 序。 Java略去了运算符重载、多重继承等模糊的概念 ,并且通过实现自动垃圾收集大大简化了程序设计者的内存管理工作。另外 ,Java也适合于在小型机上运行 ,它的基本解释器及类的支持只有 40KB左右 ,加上标准类库和线程的支持也只有 215KB左右。库和线程的支持也只有 215KB左右。 面向对象性: Java语言的设计集中于对象及其接口 ,它提供了简单

6、的类机制以及动态的 接口模型。对象中封装了它的状态变量以及相应的方法 ,实现了模块化和信息隐藏 ;而类则提供了一类对象的原型 ,并且通过继承机制 ,子类可以使用父类 所提供的方法 ,实现了代码的复用。 体系结构中立: Java解释器生成与体系结构无关的字节码指令 ,只要安装了 Java运行时系统 ,Java程序就可在任意的处理器上运行,使得 Java程序可以方便地被移植到网络上的不同机器。同时 ,Java的类库中也实现了与不同平台的接口 ,使这些类库可以移植。这样大大降低了开发、维护和管理的工作。安全性 : 用于网络、分布环境下的 Java必须要防止病毒的入侵。 Java不支持指针, 一切对内

7、存的访问都必须通过对象的实例变量来实现 ,这样就防止程序员使用 特洛伊 木马等欺骗手段访问对象的私有成员 ,同时也避免了指针操作中容易 产生的错误 支持网络编程: Java语言的特性使它可以最大限度地利用网络。 Applet是 Java的小应 用程序 ,它是动态、安全、跨平台的网络应用程序。 Java Applet嵌入 HTML语 言 ,通过主页发布到 Internet。网络用户访问服务器的 Applet时 ,这些Applet 从网络上进行传输 ,然后在支持 Java的浏览器中运行。由于 Java语言的安全机 制 ,用户一旦载入 Applet,就可以放心地来生成多媒体的用户界面或完成复杂的计算

8、而不必担心病毒的入侵。分布性: Java是面向网络的语言。通过它提供的类库可以处理 TCP/IP协议 ,用户 可以通过 URL地址在网络上很方便地访问其它对象。丰富的类库: 语言包提供的支持包括字符串处理、多线程处理、例外处理、数学函数处理等 。 实用程序包提供的支持包括哈希表、堆栈、可变数组、时间和日期等。 输入输出包用统一的 “流 ”模型来实现所有格式的 I/O,包括文件系统、网络、输入 低级网络包用于实现 Socket编程。 抽象图形用户接口包实现了不同平台的计算机的图形用户接口部件 网络包支持 Internet的 TCP/IP协议 ,提供了接口。面向对象程序设计对象、类与实体“对象”译

9、自英文的“object”,现实世界实际上是由object组成的,我们看到的一切都是object。程序设计语言为解决现实世界的问题而存在,因此,我们自然会想到,让程序设计按照我们平常看世界的方式运作,这样才最自然,这就是面向对象的程序设计的出发点。面向对象程序设计,确切的说,对象是现实世界的某个具体的物理实体在计算机逻辑中的映射和体现。比如:每个人都是一个具体存在的实体,有高度、体重等很多属性,也有走路、工作等很多行为。这样的实体在程序设计中可以表达为计算机可以理解和操作的对象。类:每个对象都是属于某种类别的。也就是说类是同种对象的集合与抽象。属于类的某个对象被称为是类的一个实例。对象的状态与行

10、为:对象的状态也称为静态属性。用计算机术语来说也就是变量。每个对象都有自己专有的变量。比如,具体的一个人,有身高、体重等。对象的行为也称为动态属性,在计算机内部用方法来表示。比如,人有走路、工作的行为。对象的关系:包含:当对象A是对象B的属性的时候,称对象B包含对象A。比如电脑与主板继承:当对象A是对象B的特例的时候,称对象A继承了对象B。比如,鲤鱼是鱼的一种特例。关联:对象A的引用是对象B的属性,A和B之间是关联关系。Java和 C、 C+之间的比较:对于变量声明、参数传递、操作符、流控制等 ,Java使用了和 C、 C+ 相同的传统 ,使得熟悉 C、 C+的程序员能很方便地进行编程。同时

11、,Java为 实现其简单、安全等特性 ,也摒弃了 C和 C+中许多不合理的内容。全局变量: Java程序中 ,不能在所有类之外定义全局变量 ,只能通过在一个类中定 义公用、静态的变量来实现一个全局变量。例如 : Class GlobalVar public static global_var; 在类 GlobalVar中定义变量 global_var为 public static,使得其它类 可以访问和修改该变量。 Java对全局变量进行了更好的封装。而在C和 C+中 ,依赖于不加封装 的全局变量常常造成系统的崩溃。 Goto语句:Java不支持 C、 C+中的 goto语句 ,而是通过例外处

12、理语句 try, Catch, final等来代替 C、 C+中用 goto来处理遇到错误时跳转的情况 ,使程序更可读 且更结构化。 指针:指针是 C、 C+中最灵活 ,也是最容易产生错误的数据类型。由指针所进行的内存地址操作常会造成不可预知的错误 ,从而破坏安全性 ,造成系统的崩溃。而 Java对指针进行完全的控制 ,程序员不能直接进行任何指针操作。同时 ,数组作为类在Java 中实现 ,良好地解决了数组访问越界这一C、 C+中不作检查的错误。内存管理:在 C中 ,程序员通过库函数 malloc()和 free()来分配和释放内存 , C+ 中则通过运算符 new和 delete来分配和释放

13、内存。再次释放已释放的内存块或未被分配的内存块 ,会造成系统的崩溃 ;同样 ,忘记释放不再使用的内存块也会逐渐耗尽系统资源。而在 Java中 ,所有的数据结构都是对象 ,通过运算符new 为它们分配内存堆。通过new得到对象的处理权 ,Java对此自动地进行管理并且进行垃圾收集 ,有效防止了由于程序员的误操作而导致的错误 ,并且更好地利用了系统资源。 数据类型的支持:在 C、 C+中 ,对于不同的平台 ,编译器对于简单数据类型如 in t,float 等分别分配不同长度的字节数 ,例如:int在 IBM PC中为 16位 ,在 VAX-11中为 32位 ,这导致了代码的不可移植性 ,但在 Ja

14、va中 ,对于这些数据类型总是分 配固定长度的位数 ,如对 int型 ,它总占 32位 ,这就保证了 Java的平台无关性。 类型转换:在 C、 C+中 ,可以通过指针进行任意的类型转换,而 Java中 ,运行时系统对对象的处理要进行类型相容性检查 ,以防止不安全的 转换。 头文件:C、 C+中用头文件来声明类的原型以及全局变量、库函数等 ,在大的系 统中 ,维护这些头文件是很困难的。而 Java不支持头文件 ,类成员的类型和访 问权限都封装在一个类中 ,运行时系统对访问进行控制 ,防止对私有成员的操作。同时 ,Java中用 import语句来与其它类进行通讯 ,以便使用它们的方法。结构和联合

15、:C、 C+中的结构和联合中所有成员均为公有 ,这就带来了安全性问题。 Java中不包含结构和联合 ,所有的内容都封装在类中。 预处理:C、 C+中用宏定义来实现的代码给程序的可读性带来了困难。在 Java 中 ,不支持宏 ,它通过关键字 final来声明一个常量 ,以实现宏定义中广泛使 用的常量定义。 简 单 的 Java程 序:Application 与 Applet程序 java程序可以分为两类:java application 和java applet。前者是完整的应用程序,需要独立的解释器来解释运行;后者则是嵌在网页中的非独立程序,由浏览器所自带的java解释器来解释运行。简单的Application程序: public class HelloWorldApp /an application public static void main (String args ) System.out.println(Hello World!); 简 单 的 Applet程序: import jav

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

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