Java程序设计 Lecture 1绪论_第1页
Java程序设计 Lecture 1绪论_第2页
Java程序设计 Lecture 1绪论_第3页
Java程序设计 Lecture 1绪论_第4页
Java程序设计 Lecture 1绪论_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

1、邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 Lecture 1 Lecture 1 绪论绪论邯郸学院计算机系邯郸学院计算机系 张延军张延军邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 OUTLINE1.Java简介:简介:1.1 Java简介简介1.2 Java应用应用1.3 Java特点特点1.4 Java在中国在中国2.计算机程序设计语言基本知识计算机程序设计语言基本知识3.Java开发环境的搭建开发环境的搭建4.Java程序的编写和运行程序的编写和运行5.Java 编程工具编程工具IDE介绍介绍6.SCJP课程地图课程地图邯郸学院信息工程学院

2、邯郸学院信息工程学院 Java程序设计程序设计 Java是印度尼西亚一个盛产咖啡的岛屿,中文一直称它为爪哇,是印度尼西亚一个盛产咖啡的岛屿,中文一直称它为爪哇,是一个遥远而神秘的地方。世界上咖啡的三大产地:巴西、爪哇、海是一个遥远而神秘的地方。世界上咖啡的三大产地:巴西、爪哇、海南。我们讲的是南。我们讲的是Java Language。1.1 Java简介简介邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 1.1 Java简介简介1.1 Java1.1 Java简介:简介:JavaJava是是Sun Sun MicrosystemMicrosystem公司于公司于199519

3、95年推出的年推出的程序设计语言及兼容平台。程序设计语言及兼容平台。JavaJava拥有拥有一套经过十一套经过十几年积累的、经过无数软件工程项目测试的庞大几年积累的、经过无数软件工程项目测试的庞大且完善的类库且完善的类库, ,内置了其他语言需要靠库甚至是内置了其他语言需要靠库甚至是操作系统才能支持的功能操作系统才能支持的功能, ,前提只是需要拥有一前提只是需要拥有一个小小的个小小的虚拟机虚拟机JVMJVM而已。而已。JavaJava语言是一个语言是一个完全面向对象完全面向对象的语言,并且的语言,并且对对软件工程技术软件工程技术有很强的支持。有很强的支持。JavaJava与其他语言与其他语言所不

4、同的是程序运行时提供了平台的独立性所不同的是程序运行时提供了平台的独立性, ,称称许可以在许可以在Unix/Unix/linuxlinux/Solaris/Solaris、WindowsWindows、MacintoshMacintosh其他操作系统其他操作系统上使用完全相同的代码。上使用完全相同的代码。Write Once , Run Anywhere!Write Once , Run Anywhere!JavaJava之父:之父:James GoslingJames Gosling邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 1.1 Java简介简介JavaJava是

5、一种编程语言是一种编程语言!JavaJava是一种思想!是一种思想!邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 1.1 Java简介简介邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 1.1 Java简介简介New ApplicationsNew Applications enable Life on the WebWeb Economy continues to GrowTime邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 1.1 Java简介简介邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 1.1 Ja

6、va简介简介邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 1.1 Java简介简介邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 1.1 Java简介简介INNOVATIONOPEN SOURCESun Identity MSun Java CAPSZFSGlassFishopenxVMBuilding on Powerful Open PlatformsxVM VirtualBox邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 1.1 Java简介简介Sun xVMOperating SystemVirtualizationArc

7、hitectureApplication InfrastructureDatabase PlatformIts All About Choice Platforms for the Web Economy邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 1.1 Java简介简介Java Virtual Machine: Flexible, ScalableDevicesDevelopmentand more.The Virtual Machine邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 Java世界的联合国世界的联合国-JCP邯郸学院信息工程学院邯郸

8、学院信息工程学院 Java程序设计程序设计 Java世界的联合国世界的联合国-JCPJCP(Java Community Process) 是一个开放的国际组织,主要是一个开放的国际组织,主要由由Java开发者以及被授权者开发者以及被授权者组成,职能是组成,职能是发展和更新发展和更新Java技术规范技术规范、参考实现、参考实现(RI)、技术兼容包、技术兼容包(TCK)。Java技术和技术和JCP两者的原创者两者的原创者都是都是SUN计算机公司。然而,计算机公司。然而,JCP已经由已经由SUN于于1995年创造年创造Java的的非正式过程,演进到如今有数百名来自世界各地非正式过程,演进到如今有数

9、百名来自世界各地Java代表成员一同代表成员一同监督监督Java发展的正式程序。发展的正式程序。JCP维护的规范包括维护的规范包括J2ME、J2SE、J2EE,XML,OSS,JAIN等。组织成员可以提交等。组织成员可以提交JCR(Java speCification Requests),通过通过特定程序以后,进入到下一版本的规范里面。特定程序以后,进入到下一版本的规范里面。 所有声称符合所有声称符合J2EE规范的规范的J2EE类产品类产品(应用服务器、应用服务器、应用软件、开发工具等应用软件、开发工具等),必须通过该组织提供的,必须通过该组织提供的TCK兼容性测兼容性测试试(需要购买测试包需

10、要购买测试包),通过该测试后,需要缴纳,通过该测试后,需要缴纳J2EE商标使用费。商标使用费。两项完成,即是通过两项完成,即是通过J2EE认证认证(Authorized Java Licensees of J2EE)。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 1.2 Java应用应用在计算机的各个领域应用很是广泛。在在计算机的各个领域应用很是广泛。在PCPC领域,微软花了大力气领域,微软花了大力气避免用户看到。迄今为止,避免用户看到。迄今为止,JavaJava语言已作为一门综合性技术在多个领语言已作为一门综合性技术在多个领域得到发展和应用:域得到发展和应用:vJSP/

11、SERVLETJSP/SERVLET:用于:用于B/SB/S模式下的动态网站制作。模式下的动态网站制作。vJava BeanJava Bean:用:用JavaJava语言开发可重用、跨平台的软件组件技术。语言开发可重用、跨平台的软件组件技术。vEJB(EnterpriseEJB(Enterprise JavaBeanJavaBean) ):用于开发和部署多层结构的、分布:用于开发和部署多层结构的、分布式的、面向对象的式的、面向对象的JavaJava应用系统的跨平台的构建体系结构。应用系统的跨平台的构建体系结构。v嵌入式应用环境嵌入式应用环境:将:将JavaJava运行环境固化到硬件运行环境固化

12、到硬件( (芯片中芯片中) ),真正实,真正实现现JavaJava程序在小型电子产品程序在小型电子产品(Cell Phone (Cell Phone 、PDAPDA等等) )上的自由运行,提上的自由运行,提供增强功能。供增强功能。vJavaJavaXMLXML:适用于基于:适用于基于WEBWEB的数据挖掘的黄金组合。的数据挖掘的黄金组合。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 1.3 Java特点特点v使用简单,高效使用简单,高效:基本:基本Java系统所占空间不足系统所占空间不足250KB。基基本解释程序和类库支持只占本解释程序和类库支持只占40KB40KB空间,

13、附加的基本标准类库和空间,附加的基本标准类库和多线程支持也只占多线程支持也只占175175的空间,力图用最小的系统完成尽可能的空间,力图用最小的系统完成尽可能多的功能。多的功能。vJava = “ C+ ”Java = “ C+ ”“ “ 复杂性和奇异性复杂性和奇异性 ” ” + “+ “安全性和安全性和可移植性可移植性”。v完全面向对象完全面向对象:使程序的结构化程序大大提高,从而提高了:使程序的结构化程序大大提高,从而提高了程序的可重用性。程序的可重用性。v自动内存管理:自动垃圾回收机制自动内存管理:自动垃圾回收机制(Auto Garbage (Auto Garbage Collectio

14、n)Collection)实现了内存的自动管理,效率大大提高。实现了内存的自动管理,效率大大提高。v分布计算分布计算:可以轻松实现基于:可以轻松实现基于TCP/IP的分布式应用系统。的分布式应用系统。v稳定性稳定性:不提供指针,从而杜绝了开发人员对指针的操作失:不提供指针,从而杜绝了开发人员对指针的操作失误而造成系统崩溃的可能性。误而造成系统崩溃的可能性。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 1.3 Java特点特点v 安全性安全性:从低层设计上就强调网络环境下的安全性,:从低层设计上就强调网络环境下的安全性,Java的验的验证技术是以证技术是以公钥加密算法公钥加

15、密算法为基础,而且从环境变量、类加载器、为基础,而且从环境变量、类加载器、文件系统、网络资源等方面实施安全策略。文件系统、网络资源等方面实施安全策略。 v 解释与编译相结合解释与编译相结合:先经编译成:先经编译成*.class字节码,然后再由字节码,然后再由JVM解释执行。解释执行。v 跨异构环境跨异构环境:编译后的:编译后的Java字节码是一种结构中立的目标文件字节码是一种结构中立的目标文件格式。格式。v 平滑移植平滑移植:Write Once,Run Anywhere!通常我们在通常我们在Win环境下环境下开发、调试,然后再迁移到其它平台上。开发、调试,然后再迁移到其它平台上。v 多线程多

16、线程:JavaJava在语言级别上支持多线程程序设计。在语言级别上支持多线程程序设计。v 异常处理异常处理:Java采用异常机制,使正常代码和错误处理代码分采用异常机制,使正常代码和错误处理代码分开,程序的主流逻辑更加清晰明了,并且能够简化错误处理任开,程序的主流逻辑更加清晰明了,并且能够简化错误处理任务。务。v 可扩充可扩充邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 20052005年年JavachinaJavachina大会在中国召开,这是大会在中国召开,这是SunSun首次在中国召开的首次在中国召开的JavaJava技术大会,技术大会,JavaJava社群的传奇人

17、物纷纷登陆中国,与中国开发人社群的传奇人物纷纷登陆中国,与中国开发人员探讨员探讨JavaJava技术的发展应用,这是技术的发展应用,这是JavaJava发展史上的第一次,也是发展史上的第一次,也是SunSun、IBMIBM、BeaBea等厂商等厂商1010年来不遗余力地推广的结果。年来不遗余力地推广的结果。如果说国内如果说国内JavaJava技术前些年是在追赶世界的话,那么近年来技术前些年是在追赶世界的话,那么近年来中中国国JavaJava技术的发展已经紧紧抓住了世界潮流,开始与世界同步。技术的发展已经紧紧抓住了世界潮流,开始与世界同步。HibernateHibernate、SpringSpr

18、ing、AOPAOP、SOASOA等技术都是在最短时间里介绍到国等技术都是在最短时间里介绍到国内的,内的,AjaxAjax刚在海外露头,国内就诞生了相似的应用框架,而国内刚在海外露头,国内就诞生了相似的应用框架,而国内工程师的身影也出现在制定工程师的身影也出现在制定JDOJDO、EJBEJB规范的专家组中。但是,与中规范的专家组中。但是,与中国软件的大环境相同,国软件的大环境相同,目前国内的目前国内的JavaJava技术主要还是集中在应用层技术主要还是集中在应用层面,所有核心技术的知识产权都在海外面,所有核心技术的知识产权都在海外。1.4 Java在中国在中国邯郸学院信息工程学院邯郸学院信息工

19、程学院 Java程序设计程序设计 根据中国软件产业协会的统计,根据中国软件产业协会的统计,国内超过三分之二的软件企业国内超过三分之二的软件企业在采用在采用JavaJava进行开发,进行开发,北京有北京有90%的软件公司都有的软件公司都有Java开发部门。开发部门。虽然有这么多企业采用虽然有这么多企业采用Java进行软件开发,但进行软件开发,但国内成熟的国内成熟的JavaJava应用应用软件还不多见软件还不多见,还,还没有建立统一的没有建立统一的JavaJava标准体系和安全架构,也没标准体系和安全架构,也没有人监控有人监控,这些问题的存在使对企业进行软件开发增加了成本,也这些问题的存在使对企业

20、进行软件开发增加了成本,也降低了客户对降低了客户对Java产品的信任。与行业软件相反,产品的信任。与行业软件相反,Java在移动领域在移动领域的发展非常顺利,的发展非常顺利,国内所有手机厂商都在生产支持国内所有手机厂商都在生产支持JavaJava技术的手机,技术的手机,短信和手机游戏等业务几乎全部是采用短信和手机游戏等业务几乎全部是采用JavaJava技术开发,技术开发,JavaJava技术几技术几乎成为行业标准。乎成为行业标准。 Java在中国的发展与中国程序员的努力密不可分。目前中国有在中国的发展与中国程序员的努力密不可分。目前中国有十多万十多万Java程序员,书店里堆满了程序员,书店里堆

21、满了Java技术书籍,各种培训机构、技术书籍,各种培训机构、软件学院中软件学院中Java都是重要课程。不过国内从事都是重要课程。不过国内从事Java开发的人数虽多,开发的人数虽多,但精通者很少,有创造力的则更少。但精通者很少,有创造力的则更少。1.4 Java在中国在中国邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 1.4 Java在中国在中国v 2007年年8月,中国中间件企业厂商,深圳月,中国中间件企业厂商,深圳金蝶中间件有限公金蝶中间件有限公司司与与java技术的创始者技术的创始者sun公司签署公司签署j2ee应用服务器认证协应用服务器认证协议,并通过了议,并通过了

22、JCP( java community process,java标准制定组标准制定组织织)的审核,正式成为其中的一员,标志着金蝶成为了中国第一的审核,正式成为其中的一员,标志着金蝶成为了中国第一个进行个进行j2ee认证的认证的java中间件厂商,同时也将积极参与中间件厂商,同时也将积极参与java国际国际标准的制订。标准的制订。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 OUTLINE1.Java简介:简介:2.计算机程序设计语言基本知识计算机程序设计语言基本知识2.1 计算机语言的划代问题计算机语言的划代问题2.2 高级编程语言的程序运行机制:高级编程语言的程序运行机

23、制:2.3 Java与与OO2.4 JavaC# 的比较的比较3.Java开发环境的搭建开发环境的搭建4.Java程序的编写和运行程序的编写和运行5.Java 编程工具编程工具IDE介绍介绍6.SCJP课程地图课程地图邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 2.1 计算机语言的划代问题计算机语言的划代问题程序设计语言的划代问题远比计算机的划代复杂,目前所见程序设计语言的划代问题远比计算机的划代复杂,目前所见到的划代观点有到的划代观点有4 4种之多,以下是其中之一:种之多,以下是其中之一:4Level4Levelv机器语言机器语言v汇编语言汇编语言v高级语言高级语言v

24、4GL4GL(SQL(SQL、Microsoft visual basicMicrosoft visual basic、Borland DelphiBorland Delphi、Sybase PowerBuilder)Sybase PowerBuilder)。注:求伯君的第一个版本注:求伯君的第一个版本WPSWPS就是用汇编语言编写的,以后就是用汇编语言编写的,以后再也没有这样大规模的软件用汇编语言来写。再也没有这样大规模的软件用汇编语言来写。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 2.2 高级编程语言的程序运行机制高级编程语言的程序运行机制高级编程语言的高级编程语

25、言的程序运行机制:程序运行机制:v编译编译(Compilation):使用专门的编译器、:使用专门的编译器、针对特定平台针对特定平台(OS)交某种高级语言源程序一次交某种高级语言源程序一次性性“翻译翻译”成可被该平台硬件成可被该平台硬件(CPU)运行的机运行的机器码,并组装成该平台的器码,并组装成该平台的OS所能识别和运行的所能识别和运行的文件格式可执行文件格式可执行(Executable)程序,程序,Windows系统中一般为系统中一般为*.exe。编译有较高的运行效率,。编译有较高的运行效率,缺点是可移植性差。缺点是可移植性差。v解释解释(Interpretation):使用专门的解释器:

26、使用专门的解释器将某种高级语言源程序逐条解释成特定平台的将某种高级语言源程序逐条解释成特定平台的机器码指令并立即执行,解释一句执行一句。机器码指令并立即执行,解释一句执行一句。“口译口译”,执行效率低,且不能脱离解释器独,执行效率低,且不能脱离解释器独自执行。自执行。解释语言的优点是解释语言的优点是跨平台跨平台。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 2.2 高级编程语言的程序运行机制高级编程语言的程序运行机制一般来说,一般来说,程序的可移植程序的可移植性和执行效率存在矛盾,此消性和执行效率存在矛盾,此消则彼长,难以同时达到最优。则彼长,难以同时达到最优。Java语

27、言根据自身的实际需要语言根据自身的实际需要采用了一种灵活的机制:采用了一种灵活的机制:编译编译型和解释型的结合型和解释型的结合。这也正是这也正是Java能跨平台的根本原因。能跨平台的根本原因。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 2.2 高级编程语言的程序运行机制高级编程语言的程序运行机制邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 2.3 Java与与OOJava是是Unix世界的产物,具有世界的产物,具有Unix的思想。的思想。Java是一种是一种有生产力的有生产力的OOPOOP语言语言( (90% Pure OOP90% Pure OO

28、P) ),C+能做能做的的Java都能做,它不是教学语言,在国内外都能做,它不是教学语言,在国内外Java用来做各种各用来做各种各样的应用。样的应用。SmallTalkSmallTalk是第一个是第一个OOPOOP语言语言( (100100 Pure OOPPure OOP) ),但自从它但自从它诞生以来,从来没有一个软件是用诞生以来,从来没有一个软件是用SmallTalk来做的。来做的。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 补充材料:计算机专业学生在校期间与工作中使用的系补充材料:计算机专业学生在校期间与工作中使用的系统平台的差异统平台的差异邯郸学院信息工程学院

29、邯郸学院信息工程学院 Java程序设计程序设计 补充材料:计算机专业学生在校期间与工作中使用的开补充材料:计算机专业学生在校期间与工作中使用的开发语言的差异发语言的差异 资料来源:资料来源:计算机教育计算机教育2004.82004.8上刊登的上刊登的关于计算机人才需求的调研报告关于计算机人才需求的调研报告中的中的对对“计算机专业学生在校期间与工作中使用的开发语言与环境的差异计算机专业学生在校期间与工作中使用的开发语言与环境的差异”的调查统计数据。的调查统计数据。 邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 2.4 Java与与C# 的比较的比较 C#(C sharp“)

30、是微软公司发布的一种面向对象的、运行于是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言之上的高级程序设计语言, 2000年年7月发布了月发布了C#语言的第一个语言的第一个预览版。预览版。2002年年2月,微软终于推出月,微软终于推出VisualStudio .NET 2002,开发者们,开发者们终于看到了终于看到了C#语言的第一个正式版本语言的第一个正式版本C# 1.0。从技术上讲,。从技术上讲,C#与与Java(1995年年)都是对传统面向对象程序设计在组件化软件时代的革新之果,都是对传统面向对象程序设计在组件化软件时代的革新之果,可谓殊途同归。两个语

31、言有着可谓殊途同归。两个语言有着“90%的重叠的重叠“。C#和和Java都提出了对都提出了对传统传统C+艰深,晦涩的语法语义的现代改良艰深,晦涩的语法语义的现代改良。在。在语法方面,两者都摈弃了语法方面,两者都摈弃了C+中中函数及其参数的函数及其参数的const修饰,宏代换,全修饰,宏代换,全局变量和全局函数局变量和全局函数等许多华而不实的地方。在继承方面,两者都采用了更等许多华而不实的地方。在继承方面,两者都采用了更易于理解和建构的易于理解和建构的单根继承和多接口实现单根继承和多接口实现的方案。的方案。 CLR(公共语言运行库公共语言运行库Common Language Runtime)和和

32、Java虚拟机虚拟机/JVM一样也是一个运行时环境,它负责一样也是一个运行时环境,它负责资源管理资源管理(内存分配和垃圾收集内存分配和垃圾收集),并保证应用和底层操作系统之间必要的分离。并保证应用和底层操作系统之间必要的分离。 邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 2.4 Java与与C# 的比较的比较为了提高平台的可靠性,以及为了达到面向事务的电子商为了提高平台的可靠性,以及为了达到面向事务的电子商务应用所要求的稳定性级别,务应用所要求的稳定性级别,CLR还要负责其他一些任务,比还要负责其他一些任务,比如如监视程序的运行监视程序的运行。按照。按照.NET的说法,

33、在的说法,在CLR监视之下运行的监视之下运行的程序属于程序属于“受管理的受管理的”(managed)代码代码,而不在,而不在CLR之下、直之下、直接在裸机上运行的应用或者组件属于接在裸机上运行的应用或者组件属于“非受管理非受管理的的”(unmanaged)的代码。的代码。 CLR将监视形形色色的常见编程错误,许多年来这些错误将监视形形色色的常见编程错误,许多年来这些错误一直是软件故障的主要根源,其中包括:一直是软件故障的主要根源,其中包括:访问数组元素越界,访问数组元素越界,访问未分配的内存空间,由于数据体积过大而导致的内存溢出访问未分配的内存空间,由于数据体积过大而导致的内存溢出,等等。等等

34、。 然而,这种对受管理代码的运行监视是有代价的。然而,这种对受管理代码的运行监视是有代价的。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 OUTLINE1.Java简介:简介:2.计算机程序设计语言基本知识计算机程序设计语言基本知识3.Java开发环境的搭建开发环境的搭建3.1 JDK的版本及安装的版本及安装3.2 安装文件夹介绍安装文件夹介绍3.3 帮助文档的使用帮助文档的使用4.Java程序的编写和运行程序的编写和运行5.Java 编程工具编程工具IDE介绍介绍6.SCJP课程地图课程地图邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 3.1 JD

35、K的版本及安装的版本及安装Java运行的基本环境由运行的基本环境由JVM(Java Virtual Machine)、Java API (Java Application Programming Interface ) 类库两部分构成。类库两部分构成。为了更好的适应开发的需要,为了更好的适应开发的需要,Java的设计者们为我们提供了三种的设计者们为我们提供了三种Java平台:每一个版本都提供了丰富的开发工具箱以适应不同的开发需平台:每一个版本都提供了丰富的开发工具箱以适应不同的开发需要。要。qJAVA ME(Java Micro Edition):JDK1.5以前为以前为J2ME,主要应用于主

36、要应用于小型嵌入设备、移动电话、智能卡等领域,已经独霸移动和嵌入式产品小型嵌入设备、移动电话、智能卡等领域,已经独霸移动和嵌入式产品开发的大半壁江山,手机开发的大半壁江山,手机Java应用程序、应用程序、Java游戏导出不穷。游戏导出不穷。qJAVA SE (Java Standard Edition): JDK1.5以前为以前为J2SE,主要应用主要应用于桌面,于桌面,Java桌面应用软件不断涌现。桌面应用软件不断涌现。qJAVA EE (Java Enterprise Edition): JDK1.5以前为以前为J2EE,主要企主要企业服务应用领域。从应用上讲,业服务应用领域。从应用上讲,

37、JAVA EE是目前企业级应用的最出色平是目前企业级应用的最出色平台和最成功的解决方案。台和最成功的解决方案。J2EE平台的三大核心技术平台的三大核心技术Servlet、JSP和和EJB。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 3.1 JDK的版本及安装的版本及安装邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 3.1 JDK的版本及安装的版本及安装通常我们以通常我们以JDK(Java Development Kit)版本来定义版本来定义Java版本。基于版本。基于市场营销的考虑,市场营销的考虑,Sun在在JDK1.2版公开发行时将版公开发行时将

38、Java改名为改名为Java 2,将,将JDK改名为改名为J2SDK (Java 2 SoftwareDevelopment Kit),2004年年2月,月,Sun发布发布JDK1.5 Beta测试版,测试版,JDK1.5(Tiger)已于已于2005年发布。从年发布。从JDK7开始,开始,Sun开放了全部的开放了全部的JDK源代码,并为之建立了开源社区,源代码,并为之建立了开源社区,从此改变从此改变了了JDK的开发模式:的开发模式:从从Sun封闭的商业团队开发模式转变为开源社区开发封闭的商业团队开发模式转变为开源社区开发的开发模式。的开发模式。邯郸学院信息工程学院邯郸学院信息工程学院 Jav

39、a程序设计程序设计 3.1 JDK的版本及安装的版本及安装 从汇编不再是最主要的开发语言那一刻起,程序员就不断需从汇编不再是最主要的开发语言那一刻起,程序员就不断需要站队。从选择要站队。从选择高级语言高级语言,到选择,到选择IDE平台平台,从选择,从选择Java还还是是 .NET ,到选择,到选择何种中间件平台何种中间件平台。 如果我们只想运行别人开发的如果我们只想运行别人开发的Java程序,可只安装程序,可只安装Java运运行环境行环境JRE(Java Runtime Environment )。JRE由由JVM、Java核心类和一些支持文件组成。核心类和一些支持文件组成。我们将使用成熟的我

40、们将使用成熟的JDK1.5 ,专业文字专业文字/十六进制编辑器十六进制编辑器UltraEdit-32 11.10, IDE(Integrate Development Environment)集成开发环境将依次使用集成开发环境将依次使用Jcreater、Eclipse或或NetBeans。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 3.1 JDK的版本及安装的版本及安装JDK1.5的安装:的安装:1.下载下载JDK1.5jdk-1_5_0_09-windows-i586-p.exe,按照安装,按照安装向导进行安装。向导进行安装。2.环境变量环境变量Path和和Class

41、path的设置:假设的设置:假设Jdk1.5安装路径为:安装路径为:C:Program FilesJavajdk1.5.0_09,在在Windows 2000/xp/2003系统下,在控制面板系统下,在控制面板/系统系统/高级高级/环境变量环境变量/下,修改下,修改Path和新建和新建Classpath环境变量:环境变量:vpath c:program filesJavajdk1.5.0_09bin:设置:设置OS寻找寻找可执行文件可执行文件(*.exe)的路径。的路径。vclasspath = . ;classpath设置设置Java编译程序寻找编译程序寻找*.class,*.jar的路径的

42、路径。jrelibrt.jar文件夹包含着文件夹包含着Java应用程序运应用程序运行时所需的行时所需的Java类库。类库。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 3.2 安装文件夹介绍安装文件夹介绍JDK安装后的文件夹结构如下:安装后的文件夹结构如下:邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 3.2 安装文件夹介绍安装文件夹介绍bin文件夹文件夹:Java开发工具,开发工具,1.Javac.exe:Compiler用来将用来将java源程序编译成源程序编译成Bytecode文件。文件。2.Java.exe:Java Interpretati

43、on,执行已经转换成执行已经转换成Bytecode的的java应用应用程序程序*.class文件。文件。3.Javadoc.exe:根据:根据Java源码及注释生成源码及注释生成HTML帮助文件。帮助文件。4.Appletviewer:Applet解释器。解释器。5.Jar:Java打包工具打包工具,将将Class文件压缩、并转换成文件压缩、并转换成Java可执行文件。可执行文件。6.Jdb:Java debugging, 用来调试用来调试java程序。程序。7.Javap:反编译,将类文件还原:反编译,将类文件还原Java源程序。源程序。demo文件夹文件夹:一些实例程序:一些实例程序。学习

44、。学习Java的利器的利器lib文件夹文件夹:Java开发类库。开发类库。jre文件夹文件夹:Java运行环境,包括运行环境,包括JVM虚拟机、运行类库等虚拟机、运行类库等src.zip:世界级大师编写的世界级大师编写的Java源代码源代码。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 3.3 帮助文档的使用帮助文档的使用Java基础类库基础类库是由是由Java 语言的发明者语言的发明者sun公司的公司的Java 底层底层开发人员使用用开发人员使用用C+和和Java开发的,我们不必关心这些类库中的开发的,我们不必关心这些类库中的类其内部怎么实现。类其内部怎么实现。API文

45、档是文档是 Java语言为帮助开发者掌握这些语言为帮助开发者掌握这些基础类的使用,通过基础类的使用,通过Java提供的文档生成器提供的文档生成器 javadoc.exe生成的生成的API帮助文档帮助文档( HTML版版)。为了方便查阅,热心的开发者又将这。为了方便查阅,热心的开发者又将这些文档制作成了方便查找,有搜索定位功能的些文档制作成了方便查找,有搜索定位功能的CHM版的帮助文档。版的帮助文档。 我们可以方便地得到包名我们可以方便地得到包名package、类名、类名class、继承结构继承结构、类的实现接口类的实现接口interface、类定义和说明、类的成员变量列表、构类定义和说明、类的

46、成员变量列表、构造方法列表造方法列表等。在英文词典的帮助下,能很好地阅读开发帮助文等。在英文词典的帮助下,能很好地阅读开发帮助文档,是一个程序员必须具备的素质。档,是一个程序员必须具备的素质。详见如何阅读详见如何阅读API文档文档.doc邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 OUTLINE1.Java简介:简介:2.计算机程序设计语言基本知识计算机程序设计语言基本知识3.Java开发环境的搭建开发环境的搭建4.Java程序的编写和运行程序的编写和运行4.1我的第一个我的第一个Java程序程序-Hello World!4.2 Java程序的形态程序的形态4.3 Ja

47、va程序的结构程序的结构4.4 Application CUI例程例程4.6 Application GUI例程例程4.7 Applet例程例程4.8 Application模版模版4.9 Applet模版模版5.Java 编程工具编程工具IDE介绍介绍6.SCJP课程地图课程地图邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 4.1 我的第一个我的第一个Java程序程序Hello World!Import java.lang.*;/import java.io.*; import java.util.*;public class HelloWorldApp /类头部分定义

48、一个类头部分定义一个public类型的类类型的类public static void main(String args) System.out.println(“Hello World!”); System.out.println(new Date(); 寻找几种语法元素:寻找几种语法元素:1.1. KeyWordKeyWord2.2. IdentifierIdentifier3.3. 分隔符:分隔符:空格空格 . . ; ; ( ) tab “ ” / ( ) tab “ ” / / /* * */ / /* * * */ /邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计

49、 4.1 我的第一个我的第一个Java程序程序Hello World!Java应用程序的运行过程:应用程序的运行过程:1.输入、编辑并存盘:在文本编辑器如输入、编辑并存盘:在文本编辑器如UltraEdit中输入中输入Java程程序并保存序并保存HelloWorldApp.java,文件名和,文件名和public类名类名(public class HelloWorldApp)必须一致。必须一致。 2.编译程序:编译程序:javac HelloWorldApp.javav错误错误(Error):分为设计错误、逻辑错误、语法错误。分为设计错误、逻辑错误、语法错误。v警告警告(Warning)v注意注

50、意(Note)3.解释执行程序:解释执行程序:java HelloWorldApp运行结果:运行结果:Hello World!邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 4.2 Java程序的各种形态程序的各种形态在网络环境中,在网络环境中,Java呈现出不同的形态,但万变不离其宗,呈现出不同的形态,但万变不离其宗,都是以都是以class的形式存在。的形式存在。vApplication运行在操作系统的运行在操作系统的JVM上。上。Java Application CUI (Character User Interface)Java Application GUI (Gr

51、aphics User Interface)vJava Applet:运行在浏览器的:运行在浏览器的JVM上上 vJSP/Servlet:运行在服务器端的:运行在服务器端的Servlet容器中容器中vJavaBean邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 4.3 Java程序的结构程序的结构Java程序结构程序结构vpackage语句:零个或多个,必须放在文件开始语句:零个或多个,必须放在文件开始vimport语句:零个或多个,必须放在所有类定义之前语句:零个或多个,必须放在所有类定义之前vpublic ClassDefinition:零个或一个:零个或一个vCla

52、ssDefinition:零个或多个:零个或多个vInterfaceDefinition:零个或多个:零个或多个v类个数:至少一个类,最多只能有一个类个数:至少一个类,最多只能有一个public类,建议一个类,建议一个Java文件中对应一个类。文件中对应一个类。vMain方法是一个特殊的方法,是所有方法是一个特殊的方法,是所有Java Application程序程序执行的入口点,所以任何一个执行的入口点,所以任何一个Java Application方法必须有且只方法必须有且只有一个有一个main方法,而且必须按照下列格式来书写:方法,而且必须按照下列格式来书写:vpublic static v

53、oid main(String args )邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 4.4 Java Application举例举例通过编译俄罗斯方块程序通过编译俄罗斯方块程序Tetris.java来理解来理解*.java、*.class和和class、Interface、Inner class定义定义的关系的关系Java中,一个中,一个java文件中可包含多个文件中可包含多个class和接口的定义,但和接口的定义,但public class如果有的话只能有一个,并且如果有的话只能有一个,并且public class与与java文件名文件名必须相同。一个必须相同。一

54、个class定义定义(包括内部类包括内部类)或或interface定义编译后生成一定义编译后生成一个个class文件。文件。Class、interface、 inner class 、anonymous inner class例程:例程:chap1codeCommArg.java功能:功能:Application CUI形式,获取命令行参数形式,获取命令行参数例程:例程:chap1codeAppInOut.java功能:功能:Application GUI在输入文本框中输入你的姓名,回车后在在输入文本框中输入你的姓名,回车后在输出文本框中显示输出文本框中显示”欢迎你,姓名!欢迎你,姓名!”,要

55、求有退出按钮要求有退出按钮.邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 4.5 Java Applet举例举例Applet建立过程:建立过程:1.建立建立ParaApplet.java(主文件名与主文件名与public class名字必须相同。名字必须相同。)并输入代码。并输入代码。2.编译编译ParaApplet.java得到得到class文件文件ParaApplet.class:javac ParaApplet.java3.建立一个建立一个Html文件:文件名任意,语法格式要求如下:文件:文件名任意,语法格式要求如下:v要嵌入的要嵌入的Applet程序程序class

56、文件名在文件名在“applet code=”设置设置vApplet运行窗口的宽度和高度分别在运行窗口的宽度和高度分别在“width=,height=”设置。设置。vApplet程序程序class文件的路径在文件的路径在“codebase=”,缺省为当前文件夹。缺省为当前文件夹。varchive=AnLake.jarv程序运行参数在程序运行参数在“Param name=”中设置。中设置。v4.双击双击ParaApplet.html运行或在命令行中输入:运行或在命令行中输入:appletviewer ParaApplet.html邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计

57、4.5 Java Applet举例举例 LifeCycle 用用浏览器浏览器IE或或appletviewer打开打开ParaApplet.html浏览器插件浏览器插件JVM在在Classpath中查找中查找ParaApplet.class并执行,显示在浏览器指定区域。并执行,显示在浏览器指定区域。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 4.5 Java Applet举例举例v例程:例程:chap1codeHelloApplet.html,HelloApplet.javav功能:功能:Applet形式的形式的Hello World!v例程:例程:chap1code P

58、araApplet.html,ParaApplet.javav功能:功能:Applet形式,输出在形式,输出在Html中设置的参数。中设置的参数。邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 嵌入嵌入Applet的的Html文件文件邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 4.6 Java Application模版模版package ;零个或多个,必须是第一句。;零个或多个,必须是第一句。import ;引入类包;引入类包,零个或多个零个或多个,必须放在所有类定义之前必须放在所

59、有类定义之前public class extends implements Attribute Definition; Construtor Definition ; Static Block/non-static Block; Inner class; Method Definition; public static void main(String args ) statement; Class Definition:零个或多个:零个或多个Interface Definition:零个或多个:零个或多个邯郸学院信息工程学院邯郸学院信息工程学院 Java程序设计程序设计 4.7 Java A

60、pplet模版模版package ;零个或多个,必须是第一句。零个或多个,必须是第一句。import ;引入类包引入类包,零个或多个零个或多个,必须放在所有类定义必须放在所有类定义之前之前public class extends Applet attributeDefinition;/ private int i=0; Construtor;/构造方法的定义构造方法的定义 methodDefinition;/一般方法的定义一般方法的定义 public void init() public void start() public void stop() public void destroy()

温馨提示

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

评论

0/150

提交评论