资源描述:
《专题十二: java程序设计语言(软设)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、软件设计师(原高级程序员)复习资料专题十二:JAVA程序设计语言Java语言简介:背景 1991年,SUNMicroSystem公司的JameGosling、BillJoe等人,在电视、控制烤面包箱等家用消费类电子产品上进行交互式操作的开发,开始时是使用C++语言,但是,后来发现C++在某些方面并不能很好的满足设计者的需要,从而考虑自行设计一门新的语言,这种新的语言并不局限于扩充语言机制本身,而是更注重语言所运行的软硬件环境。主要是可以使用其建立一个系统,这个系统运行于一个巨大的、分布的异构网络环境中,完成各种电子设备之间的通信与协同工作。基于这种思想而开发了一个
2、名为Oak的(即一种橡树的名字)新语言。 Java语言简介 Oak先是被用于家电控制中,可通过手持设备控制家电。在当时并没有引起人们的注意,直到1994年下半年,Internet的迅猛发展,环球信息网WWW的快速增长,促进了Java语言研制的进展使得它逐渐成为Internet上受欢迎的开发与编程语言。用java编写的Applet应用小程序能够嵌入到网页中运行,而实现声音、动画等功能。同时,在一般的应用程序设计方面也不逊色,完全可以用面向对象的技术与方法进行开发,符合最新的软件开发规范的要求。由于oak已经被注册,所以,最终更名为java。 Java对软件开发技术的
3、影响 工业界不少人预言:"Java语言的出现,将会引起一场软件革命",这是因为传统的软件往往都是与具体的实现环境有关,换了一个环境就需要作一番改动,耗时费力,而Java语言能在执行码(二进制码)上兼容,这样以前所开发的软件就能运行在不同的机器上,只要所用的机器能提供Java语言解释器即可。Java对软件开发技术的影响重要体现在以下四个方面:1、软件的需求分析:可将用户的需求进行动态的、可视化描述,以提供设计者更加直观的要求。用户的各色各样的需求都可以用Java语言描述清楚。2、软件的开发方法:由于Java语言的面向目标的特性,所以完全可以用O-O的技术与方法来开发。
4、3、Java语言的动画效果。利用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的小应用程序,它是动态、安全、跨平台的网络应用程序。JavaApplet嵌入HTML语言,通过主页发布到Internet。网络用户访问服务器的Applet时,这些Applet从网络上进行传输,然后在支持Java的浏览器中运行。由于Java语言的安全机制,用户一旦载入Applet,就可以放心地来生成多媒体的用户界面或完成复杂的计