




已阅读5页,还剩48页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章Java语言概述,1.1Java的发展历史1.2Java的特点1.3Java程序的开发过程与运行环境实训一安装与熟悉Java开发工具习题一,在不同的时间点上,Java这个名词有着不同的意义。什么是Java?从一些历史性的数据上,您可以对其角色有所了解。,1.1Java的发展历史,1.1.1Java的产生1995年5月23日,Sun公司在“SunWorld95”大会上推出了Java语言。Java语言作为一种网络编程语言,随着国际互联网的飞速发展,很快得到了广泛的支持和实际的应用。,其实,Java语言最初并不是为互联网设计的,它来自于Sun公司(SunMicrosystemsInc.)的一个叫“GreenProject”的项目,是该项目中编写Star7应用程序的一个程序语言,当时的名称不是Java,而是Oak。绿色项目开始于1990年12月,由PatrickNaughton、MikeSheridan与JamesGosling主持,目的是希望构筑出下一波计算机应用的趋势并加以掌握,他们认为下一波计算机应用的趋势将会集中在消费性数字产品的使用上。在1992年9月3日GreenTeam项目小组展示了Star7手持设备,这个设备具备了无线网络连接、LCD彩色屏幕等功能,而Oak在绿色项目中的目的,是用来编写Star7上应用程序的程序语言。,Oak名称的由来,是因为JamesGosling的办公室窗外有一颗橡树(Oak),就顺手取了这个名称,但后来发现Oak名称已经被注册了,工程师们边喝咖啡边讨论着新的名称,最后灵机一动而改名为您所常听到的Java。万维网(WorldWideWeb)兴起,JavaApplet成为网页互动技术的代表。,1993年第一个万维网浏览器Mosaic诞生,JamesGosling认为因特网与Java的一些特性不谋而合,利用JavaApplet在浏览器上展现互动性的媒体,在当时而言,对人们的视觉感官是一种革命性的颠覆。GreenTeam仿照了Mosaic开发出一个以Java技术为基础的浏览器WebRunner,后来改名为HotJava。虽然HotJava只是一个展示性的产品,但它使用JavaApplet所展现的多媒体效果很快吸引了许多人的注意。Java得以进军互联网。目前通常所说的Java有三层含义:首先是指一种编程语言;其次是一种开发环境;再者是一种应用环境。,在1995年5月23日,JavaDevelopmentKits1.0a2版本正式对外发表,而在1996年NetscapeNavigator2.0也正式支持Java,MicrosoftExplorer亦开始支持Java。从此Java在因特网的世界中逐渐流行起来。虽然Star7产品并不被当时的消费性市场所接受,绿色项目面临被撤销的命运,然而万维网的兴起却给了Java新的生命与舞台。,Java是一个更简单的支持面向对象(Object-Oriented)观点的程序语言,具有更高的跨平台性,在使用上比C+更为简单。它限制或简化了C+语言在开发程序时的一些功能,虽然牺牲了某些存取弹性,但让开发人员避免开发软件时可能发生的错误,并让程序语言本身在使用上更为方便,而用Java所编写出来的程序在不同的平台间具有更高的可移植性。Java可以代表程序语言,但在今日,更多时候代表了软件开发的架构。,Java的开发者版本在发表时是以JavaDevelopmentKits名称发表的,简称JDK,其除了提供编写Java程序时所必要的编译、运行、调试等工具之外,更搭配有越来越丰富的API。随着应用范围的越来越广,Java演化出3个不同领域的应用平台:JavaSE、JavaEE与JavaME。Java不再只是单纯的程序语言加上API库的组成,更提供给了开发人员在各个领域开发软件时,一种依循的标准与框架工具。总而言之,随着时间的推移,Java这个名词不再只是表示一种程序语言,而是一种开发软件的平台,更进一步地也是一种开发软件时的标准与架构的统称。事实上语言在整个Java的蓝图中只不过是一个极小的部分,学习Java本身也不仅仅在于学习如何使用它的语法,更多的时候是在学习如何应用Java所提供的资源与各种标准,以开发出架构更好,更容易维护的软件。,1.1.2Java的现状Java作为新一代面向对象的程序设计语言,特别适合于Internet应用程序开发,它的平台无关性使Java作为软件开发的一种革命性技术地位已被确立。计算机产业的许多大公司购买了Java的许可证,包括IBM、Microsoft、Apple、Oracle等。Java开发工具软件日渐丰富,如Borland公司的JBuilder、Sun公司的JavaWorkshop、IBM的VisualAge、微软公司的VisualJ+。数据库厂商如Sybase、Versant、Oracle都在开发CGI接口,支持HTML和Java。,1.2Java的特性,Java本身是一种程序语言,所以您可以从程序语言本身的特性来讨论它;Java拥有不同领域的平台,所以您可以从应用领域与平台的特性来探讨它;更重要的是Java拥有许多活跃的论坛、资源与开放源码项目,这更是在讨论Java时值得一提的特性。,1.2.1语言特性简单的;面向对象的;网络的;解释的;健壮的;安全的;可移植的;高性能的。,1.2.1.1解释的与常见的编译型高级程序设计语言不同,Java语言编译器产生的二进制代码是一种与具体机器指令无关的指令集合,只要有Java运行时系统存在,编译后的代码便可在许多处理器上运行。Java运行时系统被称为Java虚拟机(JavaVirtualMachine,JVM),Java编译器产生的代码由Java虚拟机解释执行,如图1.1所示。由此,Java语言实现了平台独立性,“一次编写,随处运行(Writeonce,Runanywhere)”。,图1.1Java的平台无关性,Java编译器产生的二进制代码称为字节码(ByteCode),字节码与任何具体计算机结构都无关。实际上,这并不是一个新想法,多年前的UCSDPascal系统就在一个商业产品中做了同样的努力,甚至比这更早,Niklauswirth的Pascal的最初实现也用同样的方法。不过,Java解决了这种技术存在的一个主要缺点,即与通常高级语言采用的编译为机器指令相比,采用这种方式程序执行效率相差很多。Java系统最新的即时编译技术(JustInTime,JIT)在一定程度上弥补了这一缺点,在程序执行前将字节码转换为本地指令,可以避免对某些指令段的重复解释;而且Java字节码被设计得既可容易地在任何机器上解释,又可容易地被快速翻译为本地机器代码。,同体系结构无关的特性使得Java应用程序可以在配备了Java虚拟机的任何计算机系统上运行,这成为Java应用软件便于移植的良好基础。另外,Java系统的基本数据类型不依赖于具体实现,在任何硬件平台上均保持一致。而通常的高级语言数据类型是与平台相关的,如C语言在Windows3.1中整数(int)为16位,在Windows95中整数为32位,在DECAlpha中整数为64位,在Intel486中整数为32位。,1.2.2应用平台Java至今主要发展出3个领域的应用平台:(1)J2SE(Java2Platform,StandardEdition)。J2SE含有基本的Java2SDK工具和运行时API,开发者可以用来编写、部署和运行Java应用程序以及Applet(在Web浏览器(如IE)中运行的Java小程序)。,(2)J2EE(Java2Platform,EnterpriseEdition)。J2EE建立在J2SE的基础上,它是JSP(JavaServerPage)、Servlet、EJB、JTS(JavaTransactionService)、Javamail以及JMS(JavaMessageService)等多项技术的混合体,主要用于开发分布式、服务器端多层结构的应用系统,如电子商务网站。(3)J2ME(Java2Platform,MicroEdition)。它主要用于开发电子产品,如移动电话、数字机顶盒、汽车导航系统等。,1.3如何学习Java,奠定Java语法基础学习Java的第一步,就是学会使用Java这个程序语言来编写程序,而学习程序语言的第一步,就是熟悉其语法的使用。程序语言就是一门语言,所不同的是这种语言是用来与计算机沟通的,所以若要熟悉语言,使用的方法莫过于多看别人写的程序,了解别人是如何使用Java来解决问题的,然后针对同样的程序进行练习,并从实例中测试自己是否真正了解到如何解决问题。,1.4Java程序的运行环境,Java语言最基本的开发环境是由Sun公司免费提供的JDK(JavaDevelopmentKit),它的开发环境比较简单,使用命令行编译源代码,编译调试程序都不是很方便。目前很多厂商推出了Java语言的集成开发工具,这些开发工具集源代码的编辑、编译以及调试于一体,而且这些开发工具可以帮助程序员生成应用程序框架,减少程序员的重复劳动,提高软件开发的效率。常见的集成开发工具有Microsoft公司的VisualJ+、Borland公司的Jbuilder、IBM公司的VisualAgeforJava等。,图1.18J2SEv1.4.2下载页面,单击此链接后,进入图1.19所示的网页,点击图中指定的链接。在图1.20所示的页面中单击按钮接受有关软件下载的协议,在图1.21中单击下载链接,如果采用InternetExplorer则出现图1.22所示保存文件的提示,单击按钮,在图1.23所示的对话框中选择保存的目录。(3)按同样的方法下载JDK的帮助文档。下载链接参考图1.24。,图1.19J2SEv1.4.2下载页面,图1.20J2SEv1.4.2下载协议,图1.21J2SEv1.4.2下载链接,图1.22文件下载保存提示,图1.23选择保存下载文件的目录,图1.24J2SEv1.4.2文档下载链接,JDK6这个下载文件中包括了公用JRE安装选择JDK6withNetBeans5.5包括JDK6与NetBeans集成开发环境JavaRuntimeEnvironment(JRE)6如果想要执行Java所开发的程序,计算机上必须安装JRE。如果打算让其他人可以执行您所编写的Java程序,则可以建议他下载JRE进行安装。JavaSE6Documentation这份文件提供JavaSE6所有API的用途与使用方式介绍,在以后开发Java程序的过程中,会很频繁地使用这份文件。您可以下载这个文件,以后就不必连上网络来查询文件。,下面介绍Windows平台下不含集成开发环境的Java2SDK1.4.2的安装和使用。这里假设下载后的JDK安装文件名称是jdk-1-4-2-windows-i586.exe,双击这个文件可以开始程序的安装。1)安装运行下载的可执行文件,出现图1.4所示的画面,选择“Iacceptthetermsinthelicenseagreement”,然后单击“Next”按钮,显示如图1.5所示的选择安装的项目。,图1.4JDK安装画面1,图1.5JDK安装画面2,如果不需安装演示程序和类库的源代码,可去掉安装项目中的“Demos”和“SourceCode”。如果需要修改JDK安装的目录,点击“Change”按钮选择。最后单击“Next”按钮,进入图1.6所示画面,确定是否为系统当前已安装的Web浏览器安装了Java虚拟机插件。单击“Next”按钮开始复制文件(见图1.7)和配置,最后显示图1.8所示画面,单击“Finish”按钮结束安装。,图1.6JDK安装画面3,图1.7JDK安装画面4,图1.8JDK安装画面5,2)了解JDK公用JRE主要是为开发好的Java程序提供执行的平台。前面曾经说过,JDK本身也有自己的JRE,这个JRE位于JDK安装目录的jre目录下,以前面的安装为例,就是在C:jdk1.4.2jre中,JDK本身所附的JRE主要是开发Java程序时做测试之用。,bin目录提供的是JDK的工具程序,包括javac、java、javadoc、appletviewer等程序。demo目录一些使用Java编写好的范例程序。jre目录JDK自己附带的JRE。db目录在JDK6中所附带的ApacheDerby数据库,这是纯Java编写的数据库,支持JDBC4.0。lib目录工具程序实际上使用的是Java工具类,大多也是由Java编写而成的。Bin文件夹下的工具程序,javac.exe、java.exe等工具程序,它们不过是个包装,执行javac.exe等程序时,最后会调用lib目录中tools.jar中的对应类。,src.zipJava提供的API类的源代码压缩文件。如果将来需要查看API的某些功能是如何实现的,可以查看这个文件中的源代码内容。,3)设置Path对于WindowsXP平台,在控制面板中选择系统,在系统属性对话框中单击按钮,如图1.25所示。然后在图1.26中“系统变量”列表中选择“Path”,然后单击按钮,在出现的对话框中仿照上面的set命令将C:j2se1.4.2bin加入到Path环境变量中。,图1.25系统属性对话框,图1.26环境变量设置,1.5第一个Java程序,/*HelloWorldApp.java*/classHelloWorldApppublicstaticvoidmain(Stringargs)System.out.println(HelloWorld!);,这个程序有几点必须注意:Java的源文件必须以扩展名.java结束主文件名与类文件名必须一致Java程序的类名称是指class关键字后的名称,就这个例子而言,也就是HelloWorldApp,该名称必须与HelloWorldApp.java的主文件名(HelloWorldApp)一致。注意每个字母的大小写Java程序中会区分字母的大小写,System与system对Java程序来说是不一样的名称。空白只能是半角空格符或是Tab字符,JDK的使用JDK使用命令行方式进行编译。要调试Java程序,首先要使用文本编辑器输入保存Java源程序,然后编译执行。下面以程序1.1为例介绍该过程。第一步:编辑源程序。使用纯文本的编辑软件,如Windows98的记事本(Notepad.exe)或MS-DOS的edit.exe。保存文件时注意文件名应与程序中的类名相同,程序1.1的文件名为HelloWorldApp.java(注意大小写)。,第二步:编译源程序。在DOS命令提示符下执行(注意大小写)javacHelloWorldApp.java如果正常的话,将生成HelloWorldApp.class文件。第三步:运行程序。在DOS命令提示符下执行(注意大小写)javaHelloWorldApp注意不
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 45599-2025液体硅橡胶连接器用自润滑型
- 高三数学复习试题与答案要点
- 江苏省南京市、盐城市2025届高三下学期3月一模试题 英语 含解析
- 材料力学与智能制造重点基础知识点
- 材料疲劳裂纹扩展数据分析方法原理重点基础知识点
- 景点火灾应急预案目录(3篇)
- 计算机软件考试难点突破试题及答案
- 2025年法学概论考试技巧与试题及答案
- 停水停电火灾应急预案(3篇)
- 高考数学典型试题及答案
- (一模)2025年深圳市高三年级第一次调研考试 英语试卷(含标准答案)
- 丙酸铬、淀粉酶对黄羽肉鸡生长性能、抗氧化和肠道健康的影响
- 光伏发电新能源课件
- 2025年贵州遵义路桥工程限公司招聘10人高频重点提升(共500题)附带答案详解
- 上海市居住房屋租赁合同范本
- 老旧小区改造给排水施工方案
- 2025届江苏省南京市南京师大附中高考数学一模试卷含解析
- 49-提高临边防护栏杆有效合格率(清泉建筑)
- 新高考2025届高考数学二轮复习专题突破精练第9讲函数中的整数问题与零点相同问题学生版
- 中华民族共同体概论教案第九讲-混一南北与中华民族大统合
- 旅游经济专业知识和实务经济师考试(中级)试卷及解答参考
评论
0/150
提交评论