




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、大家想一想,在大家想一想,在windows系统下编写的程序能够不做修改系统下编写的程序能够不做修改就直接拿到就直接拿到unix系统上运行吗系统上运行吗?显然是不可以的,因为程序显然是不可以的,因为程序的执行最终必须转换成为计算机硬件的机器指令来执行,专的执行最终必须转换成为计算机硬件的机器指令来执行,专门为某种计算机硬件和操作系统编写的程序是不能够直接放门为某种计算机硬件和操作系统编写的程序是不能够直接放到另外的计算机硬件上执行的,至少要做移植工作。要想让到另外的计算机硬件上执行的,至少要做移植工作。要想让程序能够在不同的计算机上运行,就要求程序设计语言是能程序能够在不同的计算机上运行,就要求
2、程序设计语言是能够跨越各种软件和硬件平台的,而够跨越各种软件和硬件平台的,而java满足了这一需求。满足了这一需求。下一页项目项目1 java语言入门语言入门1995年,美国年,美国sun microsystems公司正式向公司正式向it业界推业界推出了出了java语言,该语言具有安全、跨平台、面向对象、简单、语言,该语言具有安全、跨平台、面向对象、简单、适用于网络等显著特点。当时以适用于网络等显著特点。当时以web为主要形式的互联网正为主要形式的互联网正在迅猛发展,在迅猛发展,java语言的出现迅速引起所有程序员和软件公语言的出现迅速引起所有程序员和软件公司的极大关注,程序员们纷纷尝试用司的
3、极大关注,程序员们纷纷尝试用java语言编写网络应用语言编写网络应用程序,并利用网络把程序发布到世界各地进行运行。包括程序,并利用网络把程序发布到世界各地进行运行。包括ibm , oracle,微软,微软,netscape, apple, sgi等大等大公司纷纷与公司纷纷与sun microsystems公司签订合同,授权使用公司签订合同,授权使用java平台技术。微软公司总裁比尔平台技术。微软公司总裁比尔盖茨先生在经过研究后盖茨先生在经过研究后认为认为“java语言是长时间以来最卓越的程序设计语言语言是长时间以来最卓越的程序设计语言”。目。目前,前,java语言已经成为最流行的网络编程语言,
4、截止到语言已经成为最流行的网络编程语言,截止到2001年中,全世界大约有年中,全世界大约有310万万java程序员,许多大学纷程序员,许多大学纷纷开设纷开设java课程,课程,java正逐步成为世界上程序员最多的编正逐步成为世界上程序员最多的编程语言。程语言。下一页项目项目1 java语言入门语言入门上一页在经历了以大型机为代表的集中计算模式和以在经历了以大型机为代表的集中计算模式和以pc为代表的分为代表的分散计算模式之后,互联网的出现使得计算模式进入了网络计散计算模式之后,互联网的出现使得计算模式进入了网络计算时代。网络计算模式的一个特点是计算机是异构的,即计算时代。网络计算模式的一个特点是
5、计算机是异构的,即计算机的类型和操作系统是不一样的,例如算机的类型和操作系统是不一样的,例如sun工作站的硬件工作站的硬件是是sparc体系,软件是体系,软件是unix中的中的solaris操作系统,而操作系统,而pc的硬件是的硬件是intel体系,操作系统是体系,操作系统是windows或者是或者是linux,因此相应的编程语言基本上只适用于单机系统,例,因此相应的编程语言基本上只适用于单机系统,例如如cobol,fortran, c,c +等等;网络计算模式的另一个网络计算模式的另一个特点是代码可以通过网络在各种计算机上进行迁移,这就迫特点是代码可以通过网络在各种计算机上进行迁移,这就迫切
6、需要一种跨平台的编程语言,使得用它编写的程序能够在切需要一种跨平台的编程语言,使得用它编写的程序能够在网络中的各种计算机上正常运行,网络中的各种计算机上正常运行,java就是在这种需求下应就是在这种需求下应运而生的。正是因为运而生的。正是因为java语言符合了互联网时代的发展要求,语言符合了互联网时代的发展要求,才使它获得了巨大的成功。才使它获得了巨大的成功。下一页项目项目1 java语言入门语言入门上一页项目项目1 java语言入门语言入门1.1 项目概述项目概述1.2 项目目的项目目的1.3 项目支撑知识项目支撑知识1.4 项目实施项目实施1.5 项目总结项目总结1.6 扩展演练扩展演练在
7、本项目中主要学习在本项目中主要学习java基本特性、基本特性、java的发展简史、运的发展简史、运行机制,以及行机制,以及java开发环境的安装、配置方法、开发环境的安装、配置方法、java工作工作原理,并且通过介绍原理,并且通过介绍java应用程序的一个简单示例,来学习应用程序的一个简单示例,来学习java应用程序的开发流程,来解程序的基本结构。应用程序的开发流程,来解程序的基本结构。返回1.1 项目概述项目概述了解了解java的基本概念、特点。的基本概念、特点。掌握掌握java运行环境的设置和开发工具的使用。运行环境的设置和开发工具的使用。掌握两类掌握两类java程序编写、调试、运行的区别
8、。程序编写、调试、运行的区别。返回1.2 项目目的项目目的1.3 项目支撑知识项目支撑知识1.3.1 项目开发背景知识项目开发背景知识1 java产生产生的背景的背景1991年,年,sun公司的公司的james gosling, bill joe等人,等人,为电视、控制烤面包机等家用电器的交互操作开发了一个为电视、控制烤面包机等家用电器的交互操作开发了一个oak(一种橡树的名字一种橡树的名字)软件,它是软件,它是java的前身。当时,的前身。当时,oak并没有引起人们的注意,直到并没有引起人们的注意,直到1994年,随着互联网和年,随着互联网和3w的飞速发展,他们用的飞速发展,他们用java编
9、制了编制了hotjava浏览器,得浏览器,得到了到了sun公司首席执行官公司首席执行官scow mcnealy的支持,得以研的支持,得以研发和发展。为了促销和法律的原因,发和发展。为了促销和法律的原因,1995年年oak更名为更名为java。下一页返回1.3 项目支撑知识项目支撑知识java的得名过程的得名过程:一天,一天,java小组成员正在喝咖啡时,议论小组成员正在喝咖啡时,议论给新语言起个什么名字的问题,有人提议用给新语言起个什么名字的问题,有人提议用java ( java是是印度尼西亚盛产咖啡的一个岛屿印度尼西亚盛产咖啡的一个岛屿),这个提议得到了其他成员,这个提议得到了其他成员的赞同
10、,于是就采用的赞同,于是就采用java来命名此新语言。很快来命名此新语言。很快java被工被工业界认可,许多大公司如业界认可,许多大公司如ibm microsoft.dec等购买了等购买了java的使用权,并被美国杂志的使用权,并被美国杂志pc magazine评为评为1995年年十大优秀科技产品。从此,开始了十大优秀科技产品。从此,开始了java应用的新篇章。应用的新篇章。上一页 下一页返回1.3 项目支撑知识项目支撑知识java的诞生是对传统计算机模式的挑战,对计算机软件开发的诞生是对传统计算机模式的挑战,对计算机软件开发和软件产业都产生了深远的影响。和软件产业都产生了深远的影响。(1)软
11、件软件4a目标要求软件能达到任何人在任何地方在任何时目标要求软件能达到任何人在任何地方在任何时间对任何电子设备都能应用。这样能满足软件平台上互相操间对任何电子设备都能应用。这样能满足软件平台上互相操作,具有可伸缩性和重用性并可即插即用等分布式计算模式作,具有可伸缩性和重用性并可即插即用等分布式计算模式的需求。的需求。(2)基于构建开发方法的崛起,引出了基于构建开发方法的崛起,引出了corba国际标准软国际标准软件体系结构和多层应用体系框架。在此基础上形成了件体系结构和多层应用体系框架。在此基础上形成了java.2平台和平台和.net平台两大派系,推动了整个平台两大派系,推动了整个it业的发展。
12、业的发展。上一页 下一页返回1.3 项目支撑知识项目支撑知识(3)对软件产业和工业企业都产生了深远的影响,软件从以对软件产业和工业企业都产生了深远的影响,软件从以开发为中心转到了以服务为中心。中间提供商、构件提供商、开发为中心转到了以服务为中心。中间提供商、构件提供商、服务器软件以及咨询服务商出现。企业必须重塑自我,服务器软件以及咨询服务商出现。企业必须重塑自我,b2b的电子商务将带动整个新经济市场,使企业获得新的价值、的电子商务将带动整个新经济市场,使企业获得新的价值、新的增长、新的商机、新的管理。新的增长、新的商机、新的管理。(4)对软件开发带来了新的革命,重视使用第三方构件集成,对软件开
13、发带来了新的革命,重视使用第三方构件集成,利用平台的基础设施服务,实现开发各个阶段的重要技术,利用平台的基础设施服务,实现开发各个阶段的重要技术,重视开发团队的组织和文化理念,协作、创作、责任、诚信重视开发团队的组织和文化理念,协作、创作、责任、诚信是人才的基本素质。是人才的基本素质。总之,目前已看到了总之,目前已看到了java对信息时代的重要性,未来还会不对信息时代的重要性,未来还会不断发展,断发展,java在应用方面将会有更广阔的前景。在应用方面将会有更广阔的前景。上一页 下一页返回1.3 项目支撑知识项目支撑知识1.3.2项目开发背景知识项目开发背景知识2 java语言语言特性特性jav
14、a自诞生之日起,就受到了全世界的关注。这是因为它自自诞生之日起,就受到了全世界的关注。这是因为它自身的众多突出优点造成的,具体来说有以下主要特点。身的众多突出优点造成的,具体来说有以下主要特点。1.java语言是简单易学的语言是简单易学的java语言的语法与语言的语法与c语言和语言和c+语言很接近,使得大多数语言很接近,使得大多数程序员很容易学习和使用程序员很容易学习和使用java。另一方面,。另一方面,java丢弃丢弃l c+中很少使用的、很难理解的、令人迷惑的那些特性,如中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,操作符重载、多继承、自动
15、的强制类型转换。特别地,java语言不使用指针,并提供了自动的废料收集,使得程序员不语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。必为内存管理而担忧。上一页 下一页返回1.3 项目支撑知识项目支撑知识2.java语言是面向对象的语言是面向对象的java语言提供类、接口和继承等原语,为了简单起见,只支语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继但支持接口之间的多继承,并支持类与接口持类之间的单继但支持接口之间的多继承,并支持类与接口之间的实现机制之间的实现机制(关键字为关键字为implements)。java语言全面语言全面支持动态绑定,而支持动态绑定
16、,而c+语言只对虚函数使用动态绑定。总之,语言只对虚函数使用动态绑定。总之,java语言是一个纯的面向对象程序设计的语言。语言是一个纯的面向对象程序设计的语言。上一页 下一页返回1.3 项目支撑知识项目支撑知识3.java语言是分布式的语言是分布式的java语言支持语言支持internet应用的开发,在基本的应用的开发,在基本的java应用应用编程接口中有一个网络应用编程接口编程接口中有一个网络应用编程接口(j),它提供,它提供了用于网络应用编程的类库,包括了用于网络应用编程的类库,包括url,urlconnection,socket,serversocket等。等。java的的rmi(远程方
17、法激活远程方法激活)机制也是开发分布式应用的重要手段。机制也是开发分布式应用的重要手段。上一页 下一页返回1.3 项目支撑知识项目支撑知识4.java语言是健壮的语言是健壮的java的强类型机制、异常处理、废料的自动收集等是的强类型机制、异常处理、废料的自动收集等是java程序健壮性的重要保证。对指针的丢弃是程序健壮性的重要保证。对指针的丢弃是java的明智选择。的明智选择。java的安全检查机制使得的安全检查机制使得java更具健壮性。更具健壮性。5.java语言是安全的语言是安全的java通常被用在网络环境中,为此,通常被用在网络环境中,为此,java提供了一个安全提供了一个安全机制以防恶
18、意代码的攻击。除了机制以防恶意代码的攻击。除了java语言具有的许多安全特语言具有的许多安全特性以外,性以外,java对通过网络下载的类具有一个安全防范机制对通过网络下载的类具有一个安全防范机制(类类classloader),如分配不同的名字空间以防替代本地,如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制的同名类、字节代码检查,并提供安全管理机制(类类securitymanager)让让java应用设置安全哨兵。应用设置安全哨兵。上一页 下一页返回1.3 项目支撑知识项目支撑知识在网络、分布环境下的在网络、分布环境下的java必须防止病毒的入侵,而必须防止病毒的入侵
19、,而java程序的三级代码安全检查机制就可防止非法代码的入侵,阻程序的三级代码安全检查机制就可防止非法代码的入侵,阻止对内存的越权访问,避免病毒的侵害。止对内存的越权访问,避免病毒的侵害。java程序在执行前,程序在执行前,要经过要经过3次检查,分别是次检查,分别是java本身的代码检查、字节码的检本身的代码检查、字节码的检查、查、java解释器的检查。如解释器的检查。如图图1-1所示。所示。6.java语言是体系结构中立的语言是体系结构中立的java程序程序(后缀为后缀为java的文件的文件)在在java平台上被编译为体平台上被编译为体系结构中立的字节码格式系结构中立的字节码格式(后缀为后缀
20、为class的文件的文件),然后可以,然后可以在实现这个在实现这个java平台的任何系统中运行。这种途径适合于异平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。构的网络环境和软件的分发。上一页 下一页返回1.3 项目支撑知识项目支撑知识7.java语言是可移植的语言是可移植的这种可移植性来源于体系结构中立性。另外,这种可移植性来源于体系结构中立性。另外,java还严格规还严格规定了各个基本数据类型的长度。定了各个基本数据类型的长度。java系统本身也具有很强的系统本身也具有很强的可移植性,可移植性,java编译器是用编译器是用java实现的,实现的,java的运行环境的运行环境
21、是用是用ansi c实现的。实现的。8.java语言是解释型的语言是解释型的如前所述,如前所述,java程序在程序在java平台上被编译为字节码格式,平台上被编译为字节码格式,然后可以在实现这个然后可以在实现这个java平台的任何系统中运行。在运行时,平台的任何系统中运行。在运行时,java平台中的平台中的java解释器对这些字节码进行解释执行,执解释器对这些字节码进行解释执行,执行过程中需要的类在连接阶段被载人到运行环境中。行过程中需要的类在连接阶段被载人到运行环境中。上一页 下一页返回1.3 项目支撑知识项目支撑知识9.java是高性能的是高性能的与那些解释型的高级脚本语言相比,与那些解释
22、型的高级脚本语言相比,java的确是高性能的。的确是高性能的。事实上,事实上,java的运行速度随着的运行速度随着jit ( just-in-time)编译编译器技术的发展越来越接近于器技术的发展越来越接近于c +。10. java语言是多线程的语言是多线程的在在java语言中,线程是一种特殊的对象,它必须由语言中,线程是一种特殊的对象,它必须由thread类或其子类或其子(孙孙)类来创建。通常有两种方法来创建线程类来创建。通常有两种方法来创建线程:其一,其一,使用型构为使用型构为thread(runnable)的构造子将一个实现了的构造子将一个实现了runnable接口的对象包装成一个线程接
23、口的对象包装成一个线程;其二,从其二,从thread类类派生出子类并重写派生出子类并重写run方法,使用该子类创建的对象即为线方法,使用该子类创建的对象即为线程。程。上一页 下一页返回1.3 项目支撑知识项目支撑知识值得注意的是值得注意的是thread类已经实现了类已经实现了runnable接口,因此,接口,因此,任何一个线程均有它的任何一个线程均有它的run方法,而方法,而run方法中包含了线程方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。所要运行的代码。线程的活动由一组方法来控制。java语言语言支持多个线程的同时执行,并提供多线程之间的同步机制支持多个线程的同时执行,并提供
24、多线程之间的同步机制(关关键字为键字为synchronized)。11.java语言是动态的语言是动态的java语言的设计目标之一是适应于动态变化的环境。语言的设计目标之一是适应于动态变化的环境。java程序需要的类能够动态地被载入到运行环境,也可以通过网程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类,这也有利于软件的升级。另外,络来载入所需要的类,这也有利于软件的升级。另外,java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。中的类有一个运行时刻的表示,能进行运行时刻的类型检查。上一页 下一页返回1.3 项目支撑知识项目支撑知识 java语言的优良特性使得语
25、言的优良特性使得java应用具有无比的健壮性和可应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。靠性,这也减少了应用系统的维护费用。java对对象技术的对对象技术的全面支持和全面支持和java平台内嵌的平台内嵌的api能缩短应用系统的开发时间能缩短应用系统的开发时间并降低成本。并降低成本。java的编译一次,就可到处运行的特性使得它的编译一次,就可到处运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是的低成本方式。特别是java企业应用编程接口企业应用编程接口(java enterprise
26、apis)为企业计算及电子商务应用系统提供了为企业计算及电子商务应用系统提供了有关技术和丰富的类库。有关技术和丰富的类库。上一页 下一页返回1.3 项目支撑知识项目支撑知识1.3.3项目开发背景知识项目开发背景知识3 java运行运行机制机制java程序的运行必须经过编写、编译、运行程序的运行必须经过编写、编译、运行3个步骤。个步骤。编写是指在编写是指在java开发环境中进行程序代码的输入,最终形成开发环境中进行程序代码的输入,最终形成后缀名为后缀名为.java的的java源文件。源文件。编译是指使用编译是指使用java编译器对源文件进行错误排查的过程,编编译器对源文件进行错误排查的过程,编译
27、后将生成后缀名为译后将生成后缀名为.class的字节码文件,这不像的字节码文件,这不像c语言那语言那样最终生成可执行文件。样最终生成可执行文件。运行是指使用运行是指使用java解释器将字节码文件翻译成机器代码,执解释器将字节码文件翻译成机器代码,执行并显示结果。这一过程如行并显示结果。这一过程如图图1 -2所示。所示。上一页 下一页返回1.3 项目支撑知识项目支撑知识字节码文件是一种和任何具体机器环境及操作系统环境无关字节码文件是一种和任何具体机器环境及操作系统环境无关的中间代码,它是一种二进制文件,是的中间代码,它是一种二进制文件,是java源文件由源文件由java编译器编译后生成的目标代码
28、文件。编程人员和计算机都无编译器编译后生成的目标代码文件。编程人员和计算机都无法直接读懂字节码文件,它必须由专用的法直接读懂字节码文件,它必须由专用的java解释器来解释解释器来解释执行,因此执行,因此java是一种在编译基础上进行解释运行的语言。是一种在编译基础上进行解释运行的语言。java解释器负责将字节码文件翻译成具体硬件环境和操作系解释器负责将字节码文件翻译成具体硬件环境和操作系统平台下的机器代码,以便执行。因此统平台下的机器代码,以便执行。因此java程序不能直接运程序不能直接运行在现有的操作系统平台上,它必须运行在被称为行在现有的操作系统平台上,它必须运行在被称为java虚拟虚拟机
29、的软件平台之上。机的软件平台之上。上一页 下一页返回1.3 项目支撑知识项目支撑知识java虚拟机虚拟机(jvm)是运行是运行java程序的软件环境,程序的软件环境,java解解释器就是释器就是java虚拟机的一部分。在运行虚拟机的一部分。在运行java程序时,首先程序时,首先会启动会启动jvm,然后由它来负责解释执行,然后由它来负责解释执行java的字节码,并的字节码,并且且java字节码只能运行于字节码只能运行于jvm之上。这样,利用之上。这样,利用jvm就可就可以把以把java字节码程序和具体的硬件平台以及操作系统环境分字节码程序和具体的硬件平台以及操作系统环境分隔开来,只要在不同的计算
30、机上安装了针对于特定具体平台隔开来,只要在不同的计算机上安装了针对于特定具体平台的的jvm , java程序就可以运行,而不用考虑当前具体的硬程序就可以运行,而不用考虑当前具体的硬件平台及操作系统环境,也不用考虑字节码文件是在何种平件平台及操作系统环境,也不用考虑字节码文件是在何种平台上生成的。台上生成的。jvm把这种不同软硬件平台的具体差别隐藏起把这种不同软硬件平台的具体差别隐藏起来,从而实现了真正的二进制代码级的跨平台移植。来,从而实现了真正的二进制代码级的跨平台移植。jvm是是与与java平台无关的基础,平台无关的基础,java的跨平台特性正是通过在的跨平台特性正是通过在jvm中运行中运
31、行java程序实现的。程序实现的。java虚拟机的运行机制图可虚拟机的运行机制图可以通过以通过图图1-3说明。说明。上一页 下一页返回1.3 项目支撑知识项目支撑知识java语言这种语言这种“一次编写,到处运行一次编写,到处运行(write once, run anywhere)”的方式,有效地解决了目前大多数高级程序的方式,有效地解决了目前大多数高级程序设计语言需要针对不同系统来编译产生不同机器代码的问题,设计语言需要针对不同系统来编译产生不同机器代码的问题,即硬件环境和操作平台的异构问题,大大降低了程序开发、即硬件环境和操作平台的异构问题,大大降低了程序开发、维护和管理的开销。维护和管理的
32、开销。需要注意的是,需要注意的是,java程序通过程序通过jvm可以达到跨平台特性,可以达到跨平台特性,但但jvm是不跨平台的。也就是说,不同操作系统之上的是不跨平台的。也就是说,不同操作系统之上的jvm是不同的,是不同的,windows平台之上的平台之上的jvm不能用在不能用在linux上面,上面,反之亦然。反之亦然。上一页 下一页返回1.3 项目支撑知识项目支撑知识1.3.4项目开发背景知识项目开发背景知识4 java的运行的运行环境环境java开发环境的基本要求非常低,只需一个开发环境的基本要求非常低,只需一个java开发工具开发工具包包(java development kit jdk
33、),再加上一个纯文本,再加上一个纯文本编辑器即可。为了提高开发效率,可以使用功能强大的文本编辑器即可。为了提高开发效率,可以使用功能强大的文本编辑工具,例如记事本、编辑工具,例如记事本、ultraedit等。对于熟练的开发人等。对于熟练的开发人员,为了进一步提高开发效率,还可以使用具有可视化功能员,为了进一步提高开发效率,还可以使用具有可视化功能的的java专用开发工具,例如专用开发工具,例如jcreator, jbuilder, j +,netbeans。本书程序以记事本为编辑工具。本书程序以记事本为编辑工具。上一页 下一页返回1.3 项目支撑知识项目支撑知识java不仅提供了一个丰富的语言
34、和运行环境,而且还提供了不仅提供了一个丰富的语言和运行环境,而且还提供了一个免费的一个免费的java软件开发工具集软件开发工具集(java development kits, jdk)。到目前为止,。到目前为止,sun公司先后发布了多个主要公司先后发布了多个主要的的jdk的版本。其主要版本的发布时间和特点如下。的版本。其主要版本的发布时间和特点如下。(1) jdk 1.0 ; 1995年推出,是年推出,是java最早的编译环境。最早的编译环境。(2) jdk 1.2; 1998年发布,在图形化用户界面、数据年发布,在图形化用户界面、数据库互联以及其他许多方面作了重大改进。这个版本也称作带库互联
35、以及其他许多方面作了重大改进。这个版本也称作带有有 jdk 1.2的的java 1.2版本。由于该版本具有重大改变,版本。由于该版本具有重大改变,所以从所以从java 1.2版本后的版本后的java语言也称作语言也称作java 2语言。语言。上一页 下一页返回1.3 项目支撑知识项目支撑知识(3) jdk 1.3:在多媒体应用、编译速度等方面做了改进。在多媒体应用、编译速度等方面做了改进。(4) jdk1.4:断言断言(assert),为程序的调试提供了强有力,为程序的调试提供了强有力的支持。的支持。(5)jdk1.5 ( jdk 5.0):第一个对第一个对java语言做出最大改语言做出最大改
36、进的版本,添加了泛型类型、进的版本,添加了泛型类型、 for each”循环、自动打包、循环、自动打包、元数据等新特性。元数据等新特性。(6) jdk 1.6:目前最新的版本。目前最新的版本。jdk1.6中有中有9大新特性。大新特性。其中之一,其中之一,jdk1.6中自带中自带jaxb 2.o , jaxb是是java architecture for xml binding的缩写,可以将一个的缩写,可以将一个java对象转变成为对象转变成为xml格式,反之亦然。格式,反之亦然。上一页 下一页返回1.3 项目支撑知识项目支撑知识比起比起1.0 (jsr 31)来,来,jaxb2(jsr 222
37、)用用jdk 5的的新特性新特性annotation来标识要作绑定的类和属性等,这就极来标识要作绑定的类和属性等,这就极大简化了开发的工作量。由于篇幅限制,其他特性不再逐一大简化了开发的工作量。由于篇幅限制,其他特性不再逐一介绍。介绍。通常所说的通常所说的j25dk,是指与,是指与java 2语言相对应的语言相对应的java sdk(java software development kits),它是对较,它是对较新版本中新版本中jdk的一个特定称呼。的一个特定称呼。j2sdk(jdk)包括包括java的的编译器、解释器、调试器等开发工具以及编译器、解释器、调试器等开发工具以及java api
38、类库。类库。编程人员和最终用户可以利用这些工具来开发编程人员和最终用户可以利用这些工具来开发java程序。其程序。其调试工具主要包括调试工具主要包括java语言编译器语言编译器javac,用于编译器,用于编译器java源程序源程序;java字节码解释器字节码解释器java,用于解释运行,用于解释运行java程序,显示程序运行结果程序,显示程序运行结果;小应用程序浏览工具小应用程序浏览工具appleviewer,用于测试并运行,用于测试并运行java小程序。小程序。上一页 下一页返回1.3 项目支撑知识项目支撑知识1.3.5项目开发背景知识项目开发背景知识5 最简单的最简单的java程序程序ja
39、va有两类程序,即有两类程序,即java应用程序应用程序(java application)和和java小程序小程序(javaapplet),前者是在命令行中运行的,前者是在命令行中运行的独立的应用程序,它类似于以往用其他高级语言开发的程序独立的应用程序,它类似于以往用其他高级语言开发的程序;后者需要嵌人网页在浏览器中执行。本节介绍后者需要嵌人网页在浏览器中执行。本节介绍java应用程序应用程序的一个简单示例,以此来学习的一个简单示例,以此来学习java应用程序的开发流程,并应用程序的开发流程,并了解程序的基本结构。了解程序的基本结构。上一页 下一页返回1.3 项目支撑知识项目支撑知识java
40、应用程序是一个没有应用程序是一个没有wpb浏览器环境的应用系统,像浏览器环境的应用系统,像使用其他编程语言使用其他编程语言(如如c, pascal, fortran等等)编写的编写的程序一样,主要区别是程序一样,主要区别是java应用程序需要在应用程序需要在java运行环境运行环境下才能运行。使用下才能运行。使用java语言编写应用程序一般分成下列语言编写应用程序一般分成下列3个个步骤。步骤。(1)利用某一种文本编辑器建立利用某一种文本编辑器建立java源程序文件,扩展名源程序文件,扩展名为为.java;(2)利用利用java编译器编译器(javac)编译该编译该application,产,产
41、生生.class字节码文件字节码文件;(3)利用解释器利用解释器(java)解释字节码文件,完成该程序的运行解释字节码文件,完成该程序的运行过程。过程。上一页 下一页返回1.3 项目支撑知识项目支撑知识java小应用程序是可以嵌人到小应用程序是可以嵌人到html语言中,并由带有语言中,并由带有java解释器的解释器的www浏览器浏览器(如如internet explorer, netscape等等)来解释执行的程序,它不能用来解释执行的程序,它不能用java解释器直解释器直接执行。将接执行。将apple称为小程序的原因就是因为其代码较少,称为小程序的原因就是因为其代码较少,易于易于intern
42、et/intranet下载。下载。java applet程序的建立程序的建立及运行可分为下述及运行可分为下述4个步骤。个步骤。(1)利用文本编辑器建立利用文本编辑器建立java源程序文件源程序文件;(2)利用利用java编译器编译器(javac)编译该编译该java applet,产,产生生.class字节码文件字节码文件;(3)建立一个建立一个html文件,在其中嵌入文件,在其中嵌入java字节码文件字节码文件;(4)用用www浏览器或浏览器或appletviewer装入该装入该html文件,文件,使使applet运行。运行。上一页 下一页返回1.3 项目支撑知识项目支撑知识1.3.6项目开
43、发背景知识项目开发背景知识6 java编程编程规范规范软件开发是一个集体协作的过程,程序员之间的代码是经常软件开发是一个集体协作的过程,程序员之间的代码是经常要进行交换阅读的,因此,要进行交换阅读的,因此,java源程序有一些约定俗成的命源程序有一些约定俗成的命名规定,主要日的是为厂提高名规定,主要日的是为厂提高java程序的可读性。程序的可读性。如果在源程序中包含有公共类的定义,则该源文件名必须与如果在源程序中包含有公共类的定义,则该源文件名必须与该公共类的名字完全一致,字母的大小写都必须一样。这是该公共类的名字完全一致,字母的大小写都必须一样。这是java语言的一个严格的规定,如果不遵守,
44、在编译时就会出语言的一个严格的规定,如果不遵守,在编译时就会出错。因此,在一个错。因此,在一个java源程序中至多只能有一个公共类的定源程序中至多只能有一个公共类的定义。如果源程序中不包含公共类的定义,则该文件名可以任义。如果源程序中不包含公共类的定义,则该文件名可以任意取名。意取名。上一页 下一页返回1.3 项目支撑知识项目支撑知识如果在一个源程序中有多个类定义,则在编译时将为每个类如果在一个源程序中有多个类定义,则在编译时将为每个类生成一个生成一个.class文件。源文件的命名规则如下。文件。源文件的命名规则如下。 (1)包名包名:包名是全小写的名词,中间可以由点分隔开,例包名是全小写的名
45、词,中间可以由点分隔开,例如如:java.awt.event) (2)类名类名:首字母大写,通常由多个单词合成一个类名,要求首字母大写,通常由多个单词合成一个类名,要求每个单词的首字母也要大写,例如每个单词的首字母也要大写,例如:class hello world。(3)接口名接口名:命名规则与类名相同,例如命名规则与类名相同,例如:interface collection。(4)方法名方法名:往往由多个单词合成,第一个单词通常为动词,往往由多个单词合成,第一个单词通常为动词,首字母小写,中间的每个单词的首字母都要大写,例首字母小写,中间的每个单词的首字母都要大写,例如如:balance ac
46、count, isbuttonpress。上一页 下一页返回1.3 项目支撑知识项目支撑知识(5)变量名变量名:全小写,一般为名词,例如全小写,一般为名词,例如:length。(6)常量名常量名:基本数据类型的常量名为全大写,如果是由多个基本数据类型的常量名为全大写,如果是由多个单词构成,可以用下划线隔开,例如单词构成,可以用下划线隔开,例如:int year;int week of month。上一页返回1.4 项目实施项目实施1.4.1 jdk安装安装为了建立起为了建立起java的运行环境,可以到的运行环境,可以到sun公司的网站公司的网站(http:/j)上下载最新的上下载最新的jdk。
47、建议同时。建议同时下载其下载其java documentation,这是,这是java帮助文档。以帮助文档。以jdk 1.6.0版的版的j25dk为例为例(即即j2sdk 1.6.0,运行下载,运行下载的的j2 sdk-6u19-windows-1586.exe文件,开始进行文件,开始进行java环境的正式安装。安装程序会弹出许可证协议阅读画面环境的正式安装。安装程序会弹出许可证协议阅读画面如如图图1-4所示,单击【接受】按钮后,进人所示,单击【接受】按钮后,进人jdk的默认安装的默认安装界面,如界面,如图图1-5所示。所示。下一页返回1.4 项目实施项目实施默认安装于默认安装于c:progr
48、am files java j2sdkl.6.0目目录下,用户可以更改这个默认安装目录,单击【更改】按钮,录下,用户可以更改这个默认安装目录,单击【更改】按钮,进入如进入如图图1-6所示的更改所示的更改jdk安装路径的界面,将路径改为安装路径的界面,将路径改为d;javajdk1.6.0 ,单击【确定】按钮后回到如单击【确定】按钮后回到如图图1 -7所示的安装界面。单击【下一步】按钮后,所示的安装界面。单击【下一步】按钮后,jdk安装程序运安装程序运行中,如行中,如图图1-8所示。在所示。在jdk安装程序的运行中,会弹出安装程序的运行中,会弹出jre的安装界面,如的安装界面,如图图1 -9所示
49、,初学者可以单击【取消】所示,初学者可以单击【取消】按钮,不选择安装。单击【更改】按钮,如按钮,不选择安装。单击【更改】按钮,如图图1-10所示,所示,更改更改jre的安装路径为的安装路径为d;java jre后,单击【确定】按后,单击【确定】按钮,钮,jre安装程序开始运行,如安装程序开始运行,如图图1-11所示,随后,再弹所示,随后,再弹出如出如图图1-12和和图图1-13所示画面,就安装成功。所示画面,就安装成功。上一页 下一页返回1.4 项目实施项目实施为了能够正常使用所安装的开发包需要设置环境变量,主要为了能够正常使用所安装的开发包需要设置环境变量,主要包括两个环境变量包括两个环境变
50、量:path和和classpath。path称之为路径称之为路径环境变量,用来指定环境变量,用来指定java开发包中的一些可执行程序开发包中的一些可执行程序(java.exe,javac.exe等等)所在的位置所在的位置;classpath称之称之为类路径环境变量。不同的操作系统上,设定环境变量的方为类路径环境变量。不同的操作系统上,设定环境变量的方法是不同的。法是不同的。对于对于windows 95/98的操作系统,需要编辑的操作系统,需要编辑autoexec.bat文件,在其最后面添加如下的两行语句,保文件,在其最后面添加如下的两行语句,保存文件并重新启动系统。存文件并重新启动系统。上一页
51、 下一页返回1.4 项目实施项目实施对于对于windows 2000或或windows xp操作系统,设置操作系统,设置path变量变量:右击【我的电脑】,在弹出菜单中单击【属性】,右击【我的电脑】,在弹出菜单中单击【属性】,弹出【系统属性】对话枢,在对话枢中选择【高级】选项卜,弹出【系统属性】对话枢,在对话枢中选择【高级】选项卜,在该页面单击【环境变量】按钮,进人【环境变量】对话枢。在该页面单击【环境变量】按钮,进人【环境变量】对话枢。找到变量找到变量path,双击该行就可以编辑该环境变量的值。在该,双击该行就可以编辑该环境变量的值。在该变量已有的值后,再添加变量已有的值后,再添加“;d ;
52、 java jdk1.6.0 bin(注意注意:不包括引号,分号不包括引号,分号“;”不能缺少不能缺少),单击【确定】,单击【确定】按钮进行保存工作,如按钮进行保存工作,如图图1-14所示所示上一页 下一页返回1.4 项目实施项目实施设置设置classpath类路径环境变量类路径环境变量:在【系统变量】列表枢里,在【系统变量】列表枢里,单击【新建】按钮,在新建系统变量对话枢里,设变量单击【新建】按钮,在新建系统变量对话枢里,设变量名名:classpath ,设变量值为设变量值为“.;d:java jdk1.6.0 lib”(注意注意:不包括引号,不包括引号,“.;”不能缺少不能缺少)。如。如图
53、图1-15图所示。图所示。至此,完成环境变量的设定工作。至此,完成环境变量的设定工作。1.4.2测试测试java开发环境开发环境单击【开始】一【程序】一【附件】一【命令提示符】,或单击【开始】一【程序】一【附件】一【命令提示符】,或者【开始】一【运行】,输入者【开始】一【运行】,输入cmd命令,按回车键,进人命命令,按回车键,进人命令提示符界面,然后切换路径,在令提示符界面,然后切换路径,在d:java _jdk1.6.0路径下,输人以下两条命令,命令的实例演示路径下,输人以下两条命令,命令的实例演示如下。如下。上一页 下一页返回1.4 项目实施项目实施(1)版本测试版本测试:java-ver
54、sion。显示的是本机中显示的是本机中java版本,如版本,如图图1-16所示。否则需要重新所示。否则需要重新安装安装java。注意。注意:-version是是java命令的参数。命令的参数。(2)环境测试环境测试:javac。显示如显示如图图1-17所示,说明所示,说明path设置有问题,需要修改系统设置有问题,需要修改系统变量变量path的值。否则如的值。否则如图图1-18所示,说明所示,说明path设置成功。设置成功。这就说明现在可以编写运行这就说明现在可以编写运行java程序了。程序了。上一页 下一页返回1.4 项目实施项目实施1.4.3 java应用程序应用程序(java appli
55、cation)的建立及运行的建立及运行特别说明特别说明:本书中所有例程源代码之前的序号均是为了方便程本书中所有例程源代码之前的序号均是为了方便程序分析而另外加的,读者书写源程序时请务必将序号去掉。序分析而另外加的,读者书写源程序时请务必将序号去掉。本书所有程序均保存在本书所有程序均保存在d:java目录下。目录下。【例【例1一一1】源程序名为】源程序名为“helloworld.java”的程序,在的程序,在屏幕上输出屏幕上输出“ helloworld.java欢迎你欢迎你!”。上一页 下一页返回1.4 项目实施项目实施创建创建java应用程序源文件应用程序源文件(1)打开【附件】中的记事本,在
56、文本编辑界面中键入如下打开【附件】中的记事本,在文本编辑界面中键入如下程序清单。程序清单。上一页 下一页返回1.4 项目实施项目实施(2)单击【文件】一【保存】,将文件命名单击【文件】一【保存】,将文件命名“helloworld.java”,保存到,保存到d:java目录下。本书目录下。本书中所有的程序均保存在中所有的程序均保存在d:java目录下。注意目录下。注意:文件名必须文件名必须和所声明的公共类的类名即和所声明的公共类的类名即“helloworld”保持一致,而保持一致,而且且java是区分大小写的,且扩展名必须是是区分大小写的,且扩展名必须是“.java”。2.编译编译文件保存成功之
57、后,从【命令提示符】窗口中进人到文件保存成功之后,从【命令提示符】窗口中进人到d: java目录。在此目录下,进行测试。依次输入命令目录。在此目录下,进行测试。依次输入命令:(1)输入编译程序命令输入编译程序命令:上一页 下一页返回1.4 项目实施项目实施(2)输入显示文件目录命令输入显示文件目录命令:dir这时会发现目录下多了一个这时会发现目录下多了一个“helloworld.class”文件,文件,这是这是javac编译器将源代码编译成字节代码生成类文件的结编译器将源代码编译成字节代码生成类文件的结果。再由果。再由java解释,执行解释,执行 helloworld.class”类文件。类文
58、件。3.运行运行输入运行程序命令输入运行程序命令:上一页 下一页返回1.4 项目实施项目实施运行结果如运行结果如图图1-19所示。所示。4.程序分析程序分析输出的输出的“helloworld, java欢迎你欢迎你!”是是java编译器直接编译器直接执行执行java应用程序字节代码的结果。应用程序字节代码的结果。第第1句句:类的声明,声明为类的声明,声明为“helloworld”的类的类(class)。下面对每个单认进行分析。下面对每个单认进行分析。public:说明类的属性为公共类,说明类的属性为公共类,public并不是必须的,可并不是必须的,可写可不写。写可不写。上一页 下一页返回1.4
59、 项目实施项目实施class:是是java类的关键字,如果想声明一个类,必须使用类的关键字,如果想声明一个类,必须使用这个关键字这个关键字class ,代表以下的内容都是这个类的内容。我们代表以下的内容都是这个类的内容。我们可以将类理解为包含程序逻辑的容器,可以将类理解为包含程序逻辑的容器,java程序中的任何部程序中的任何部分都必须包含在类中。分都必须包含在类中。helloworld:是这个类的名字,类名必须以字母开头。是这个类的名字,类名必须以字母开头。 第第2-7句句:“”这代表类这代表类“helloworld”是从这里开始,最是从这里开始,最后的结束是在后的结束是在“”处。处。第第3句
60、句:是是java程序的一个特殊方法,又称程序的一个特殊方法,又称main方法。同方法。同c语言中的语言中的main函数用法一样,程序从这个方法开始执行。函数用法一样,程序从这个方法开始执行。下面对第下面对第3行中的每个单词进行分析。行中的每个单词进行分析。上一页 下一页返回1.4 项目实施项目实施public:访问控制符,表示访问控制符,表示main方法为公共的,可以被调用,方法为公共的,可以被调用,所以这个所以这个public不能省。不能省。static:是将是将main方法声明为静态的,在这里这个关键字也方法声明为静态的,在这里这个关键字也不能省。不能省。string arg:用来接收命令
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论