Java程序设计案例教程-第1章 Java语言概述.ppt

上传人:1595****071 文档编号:71839079 上传时间:2023-02-06 格式:PPT 页数:52 大小:283.50KB
返回 下载 相关 举报
Java程序设计案例教程-第1章 Java语言概述.ppt_第1页
第1页 / 共52页
Java程序设计案例教程-第1章 Java语言概述.ppt_第2页
第2页 / 共52页
点击查看更多>>
资源描述

《Java程序设计案例教程-第1章 Java语言概述.ppt》由会员分享,可在线阅读,更多相关《Java程序设计案例教程-第1章 Java语言概述.ppt(52页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、Java程序设计案例教程第1章 Java语言概述第第1章章 Java语言概述语言概述第1页本章概述 本章的学习目标主要内容Java程序设计案例教程第1章 Java语言概述本章概述本章概述lJava是一种跨平台的面向对象程序设计语言,自是一种跨平台的面向对象程序设计语言,自问世以来,受到越来越多开发者的喜爱。它不仅问世以来,受到越来越多开发者的喜爱。它不仅吸收了吸收了C+语言的各种优点,而且摒弃了语言的各种优点,而且摒弃了C+里里难以理解的多继承、指针等概念,因此难以理解的多继承、指针等概念,因此Java语言语言具有功能强大和简单易用等特征。本章将从具有功能强大和简单易用等特征。本章将从Java

2、的起源讲起,详细介绍的起源讲起,详细介绍Java的发展历程、的发展历程、Java的的特点以及开发环境的搭建,并创建一个简单的特点以及开发环境的搭建,并创建一个简单的HelloWorld程序。程序。第2页Java程序设计案例教程第1章 Java语言概述本章的学习目标本章的学习目标l了解了解Java的发展史的发展史l理解理解Java语言的特点语言的特点l掌握掌握Java程序的运行机制程序的运行机制l掌握掌握JDK的安装与配置的安装与配置l掌握在掌握在Eclipse中新建中新建Java工程工程l熟悉熟悉Eclipse的常用操作的常用操作第3页Java程序设计案例教程第1章 Java语言概述第4页主要

3、内容主要内容1.1 Java的起源与发展史的起源与发展史1.2 Java的特点的特点1.3 Java虚拟机虚拟机1.4 下载并安装下载并安装JDK1.5 使用使用Eclipse开发开发Java程序程序1.6 本章小结本章小结1.7 思考和练习思考和练习 Java程序设计案例教程第1章 Java语言概述1.1 Java的起源与发展史的起源与发展史lJava是由是由Sun公司于公司于1995年推出,在年推出,在Java语言出语言出现以前,很难想象在现以前,很难想象在Window环境下编写的程序环境下编写的程序可以不加修改就在可以不加修改就在Linux系统中运行,因为计算机系统中运行,因为计算机硬件

4、只识别机器指令,而不同操作系统中的机器硬件只识别机器指令,而不同操作系统中的机器指令是有所不同的,所以,要把一种平台下的程指令是有所不同的,所以,要把一种平台下的程序迁移到另一个平台,必须要针对目标平台进行序迁移到另一个平台,必须要针对目标平台进行修改,如果想要程序运行在不同的操作系统,就修改,如果想要程序运行在不同的操作系统,就要求程序设计语言能够跨平台,可以跨越不同的要求程序设计语言能够跨平台,可以跨越不同的硬件、软件环境,而硬件、软件环境,而Java语言就能够满足这种要语言就能够满足这种要求。求。第5页Java程序设计案例教程第1章 Java语言概述程序设计语言程序设计语言l程序设计语言

5、程序设计语言(Program Design Language,PDL)又称为又称为编程语言,是一组用来定义计算机程序的语法规则。语言编程语言,是一组用来定义计算机程序的语法规则。语言的基础是一组记号和一组规则,根据规则由记号构成的记的基础是一组记号和一组规则,根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就号串的总体就是语言。在程序设计语言中,这些记号串就是程序。从发展历程来看,程序设计语言可以分为是程序。从发展历程来看,程序设计语言可以分为4类。类。机器语言:由二进制机器语言:由二进制 0、1 代码指令构成。代码指令构成。汇编语言:机器指令的符号化,与机器指令存在着直

6、接的对应关汇编语言:机器指令的符号化,与机器指令存在着直接的对应关系,所以汇编语言同样存在着难学难用、容易出错、维护困难等系,所以汇编语言同样存在着难学难用、容易出错、维护困难等缺点。缺点。高级语言:面向用户的、基本上独立于计算机种类和结构的语言。高级语言:面向用户的、基本上独立于计算机种类和结构的语言。非过程化语言:面向应用,为最终用户设计的一类程序设计语言。非过程化语言:面向应用,为最终用户设计的一类程序设计语言。第6页Java程序设计案例教程第1章 Java语言概述Java的家世的家世lJava继承了继承了C和和C+语言的许多优点。语言的许多优点。lC语言的诞生震惊了计算机界,因为它从根

7、本上改变了编语言的诞生震惊了计算机界,因为它从根本上改变了编程的方式和思想。程的方式和思想。l在在C语言以前,程序员通常需要在品质不同的各种计算机语言以前,程序员通常需要在品质不同的各种计算机语言之间进行选择。语言之间进行选择。l从从20世纪世纪70年代晚期到年代晚期到80年代早期,年代早期,C语言成为主要的计语言成为主要的计算机编程语言,并且在今天仍然被广泛使用。算机编程语言,并且在今天仍然被广泛使用。l到了到了20世纪世纪80年代早期,许多项目超出了结构化方法的极年代早期,许多项目超出了结构化方法的极限。为了解决这一问题,发明了一种新的编程方法,称为限。为了解决这一问题,发明了一种新的编程

8、方法,称为面向对象编程面向对象编程(Object-Oriented Programming,OOP)。第7页Java程序设计案例教程第1章 Java语言概述Java的家世的家世l随着面向对象编程思想的出现,随着面向对象编程思想的出现,C语言作为一种面向过程语言作为一种面向过程的语言,已经不能满足面向对象开发的需要。的语言,已经不能满足面向对象开发的需要。C+便是在便是在C语言的基础之上为支持面向对象的程序设计而设计的。语言的基础之上为支持面向对象的程序设计而设计的。lC+语言的主要特点表现在两个方面:一是全面兼容语言的主要特点表现在两个方面:一是全面兼容C,二是支持面向对象的方法。二是支持面向

9、对象的方法。l到了到了20世纪世纪80年代末年代末90年代初,使用面向对象编程的年代初,使用面向对象编程的C+语言占据了主导地位。因为语言占据了主导地位。因为C+既支持面向对象编程模式,既支持面向对象编程模式,又具有又具有C语言的高效率以及风格优点,它确实是一种可以语言的高效率以及风格优点,它确实是一种可以用于创建各种程序的语言。然而,就像过去一样,推动计用于创建各种程序的语言。然而,就像过去一样,推动计算机语言向前演变的力量又一次在酝酿。在短短的几年中,算机语言向前演变的力量又一次在酝酿。在短短的几年中,万维网万维网(World Wide Web)和和Internet达到了临界规模。这达到了

10、临界规模。这一事件又将会促成编程的另一场革命。一事件又将会促成编程的另一场革命。第8页Java程序设计案例教程第1章 Java语言概述Java的诞生的诞生lJava是由是由James Gosling、Patrick Naughton、Chris Warth、Ed Frank和和Mike Sheridan于于1991年在年在Sun公司公司构想出来的。构想出来的。l这种语言最初称为这种语言最初称为Oak,是,是Sun公司为一些消费性电子产公司为一些消费性电子产品而设计的一个通用环境。品而设计的一个通用环境。l当当Sun公司公司1995年正式以年正式以Java这个名字推出的时候,几这个名字推出的时候

11、,几乎所有的乎所有的Web开发人员都想到:噢,这正是我想要的。于开发人员都想到:噢,这正是我想要的。于是是Java成了一颗耀眼的明星,随着互联网的发展,成了一颗耀眼的明星,随着互联网的发展,Java被推到计算机语言设计的最前沿。被推到计算机语言设计的最前沿。lJava从从C和和C+继承了许多特性,这是有意而为之。使用继承了许多特性,这是有意而为之。使用与与C语言类似的语法以及模仿语言类似的语法以及模仿C+的面向对象特性,可以的面向对象特性,可以使使Java语言对于众多经验丰富的语言对于众多经验丰富的C/C+程序员更具吸引力。程序员更具吸引力。第9页Java程序设计案例教程第1章 Java语言概

12、述Java的发展历程的发展历程l1.Java 1.x1996年年1月,月,Sun公司发布了公司发布了Java的第一个开发工具包的第一个开发工具包(JDK 1.0),这是,这是Java发展历程中的重要里程碑,标志着发展历程中的重要里程碑,标志着Java成为一种独立成为一种独立的开发工具。的开发工具。9月,约月,约8.3万个网页应用了万个网页应用了Java技术来制作。技术来制作。10月,月,Sun公司发布了公司发布了Java平台的第一个即时平台的第一个即时(JIT)编译器。编译器。在在JDK 1.0发布不久,发布不久,Java的设计人员就着手创建下一个版本。的设计人员就着手创建下一个版本。1997

13、年年2月,月,JDK 1.1面世,新版本添加了许多新的库元素,改进面世,新版本添加了许多新的库元素,改进了事件处理方式,并且重新配置了了事件处理方式,并且重新配置了JDK 1.0中库的许多特性,也去中库的许多特性,也去掉了最初版本中的一些特性。掉了最初版本中的一些特性。第10页Java程序设计案例教程第1章 Java语言概述Java的发展历程的发展历程l2.Java 21998年年12月月8日,第二代日,第二代Java平台的企业版平台的企业版J2EE发布。发布。1999年年6月,月,Sun公司发公司发布了第二代布了第二代Java平台平台(简称为简称为Java 2)的的3个版本:个版本:J2ME

14、(Java 2 Micro Edition,Java2平台的微型版平台的微型版),应用于移动、无线及有限资源的环境;,应用于移动、无线及有限资源的环境;J2SE(Java 2 Standard Edition,Java 2平台的标准版平台的标准版),应用于桌面环境;,应用于桌面环境;J2EE(Java 2 Enterprise Edition,Java 2平台的企业版平台的企业版),应用于基于,应用于基于Java的应用服务器。的应用服务器。Java 2平台的发布,是平台的发布,是Java发展过程中最重要的一个里程碑,标志着发展过程中最重要的一个里程碑,标志着Java的应用的应用开始普及。开始普

15、及。2000年年5月,月,JDK1.3、JDK1.4和和J2SE1.3相继发布,几周后其获得了相继发布,几周后其获得了Apple公司公司Mac OS X的工业标准的支持。的工业标准的支持。J2SE 1.3是对是对Java 2原始版本的第一次重要升级。原始版本的第一次重要升级。这次升级主要是更新这次升级主要是更新Java的现有功能以及的现有功能以及“限制限制”开发环境。开发环境。2001年年9月月24日,日,J2EE1.3发布。发布。2002年年2月月26日,日,J2SE1.4发布。发布。J2SE 1.4进一步增强了进一步增强了Java,这个发布版本包含这个发布版本包含了一些重要的升级、改进和新

16、增功能。自此了一些重要的升级、改进和新增功能。自此Java的计算能力有了大幅提升。的计算能力有了大幅提升。第11页Java程序设计案例教程第1章 Java语言概述Java的发展历程的发展历程l3.J2SE 5J2SE 1.4之后的下一个发布版本是之后的下一个发布版本是J2SE 5(内部版本号内部版本号1.5.0),该版本也是革命性的。于,该版本也是革命性的。于2004年年9月月30日发布,日发布,成为成为Java语言发展史上的又一里程碑。它与先前的大语言发展史上的又一里程碑。它与先前的大多数多数Java升级不同,因为那些升级提供了重要、但是升级不同,因为那些升级提供了重要、但是有规律的改进,而

17、有规律的改进,而J2SE 5从根本上扩展了从根本上扩展了Java语言的语言的应用领域、功能和范围。应用领域、功能和范围。第12页Java程序设计案例教程第1章 Java语言概述Java的发展历程的发展历程l4.Java SE 62005年年6月,月,Sun公司发布了公司发布了Java SE 6,内部的开发,内部的开发版本号是版本号是1.6。此时,。此时,Java的各种版本已经更名,已取的各种版本已经更名,已取消其中的数字消其中的数字2,如,如J2EE更名为更名为Java EE,J2SE更名更名为为Java SE,J2ME更名为更名为Java ME。Java开发工具包开发工具包叫做叫做JDK 6

18、。2006年年11月月13日,日,Java技术的发明者技术的发明者Sun公司宣布,公司宣布,将将Java技术作为免费软件对外发布。技术作为免费软件对外发布。Sun公司正式发公司正式发布的有关布的有关Java平台标准版的第一批源代码,以及平台标准版的第一批源代码,以及Java迷你版的可执行源代码。从迷你版的可执行源代码。从2007年年3月起,全世界所有月起,全世界所有的开发人员均可对的开发人员均可对Java源代码进行修改。源代码进行修改。第13页Java程序设计案例教程第1章 Java语言概述Java的发展历程的发展历程l5.Java SE 72009年,年,Oracle公司宣布收购公司宣布收购

19、Sun公司。公司。2011年,年,Oracle公司举行了全球性的活动,以庆祝公司举行了全球性的活动,以庆祝Java 7的推的推出,随后出,随后Java SE 7正式发布,内部版本号为正式发布,内部版本号为1.7。Java SE 7是自从是自从Sun Microsystems被被Oracle公司收公司收购之后第一个重要的发布版本。购之后第一个重要的发布版本。Java SE 7包含许多新包含许多新特性,包括为特性,包括为Java语言增加的重要特性和语言增加的重要特性和API库,并且库,并且对对Java运行时系统进行了升级,升级的内容包括对非运行时系统进行了升级,升级的内容包括对非Java语言的支持

20、。不过对语言的支持。不过对Java开发人员来说,他们最开发人员来说,他们最感兴趣的还是为语言和感兴趣的还是为语言和API增加的特性。增加的特性。第14页Java程序设计案例教程第1章 Java语言概述Java的发展历程的发展历程l6.Java SE 82014年年3月,月,Oracle发布发布Java SE 8。这也是最新的。这也是最新的Java发布版本,对应的发布版本,对应的Java开发工具包称为开发工具包称为JDK 8,内部版本号为内部版本号为1.8。JDK 8是是Java语言的重要升级,包语言的重要升级,包含了一个影响深远的新语言特性:含了一个影响深远的新语言特性:lambda表达式。表

21、达式。从从JDK 8开始,可以为接口指定的方法定义默认实现。开始,可以为接口指定的方法定义默认实现。如果没有为默认方法创建实现,就使用接口定义的默如果没有为默认方法创建实现,就使用接口定义的默认实现。这种特性允许接口随着时间优雅地演化,因认实现。这种特性允许接口随着时间优雅地演化,因为在向接口添加新方法时,不会破坏现有代码。在默为在向接口添加新方法时,不会破坏现有代码。在默认实现更加合适时,这也有助于简化接口的实现。认实现更加合适时,这也有助于简化接口的实现。第15页Java程序设计案例教程第1章 Java语言概述第16页主要内容主要内容1.1 Java的起源与发展史的起源与发展史1.2 Ja

22、va的特点的特点1.3 Java虚拟机虚拟机1.4 下载并安装下载并安装JDK1.5 使用使用Eclipse开发开发Java程序程序1.6 本章小结本章小结1.7 思考和练习思考和练习 Java程序设计案例教程第1章 Java语言概述1.2 Java的特点的特点l促使促使Java诞生的基本动力是可移植性和安全性,诞生的基本动力是可移植性和安全性,但是在但是在Java语言最终成型的过程中,其他因素也语言最终成型的过程中,其他因素也扮演了重要角色。扮演了重要角色。第17页Java程序设计案例教程第1章 Java语言概述简单性简单性第18页lJava继承了继承了C/C+的语法以及许多面向对象特性,的

23、语法以及许多面向对象特性,设计者们把设计者们把C+语言中一些复杂容易出错的特征语言中一些复杂容易出错的特征去掉了,例如,去掉了,例如,Java不支持不支持go to语句,代之以语句,代之以提供提供break和和continue语句以及异常处理:语句以及异常处理:Java还剔除了还剔除了C+的操作符重载和多继承特征;另外,的操作符重载和多继承特征;另外,因为因为Java没有结构,数组和字符串都是对象,所没有结构,数组和字符串都是对象,所以不需要指针;以不需要指针;Java能够自动处理对象的引用和能够自动处理对象的引用和间接引用,实现自动的无用单元间接引用,实现自动的无用单元收集。收集。l对于一位

24、有经验的对于一位有经验的C+程序员,只需要非常少的程序员,只需要非常少的努力就可以使用努力就可以使用Java进行程序开发。对于初学者,进行程序开发。对于初学者,只要理解了面向对象编程的基本概念,学习只要理解了面向对象编程的基本概念,学习Java也会变得非常容易。也会变得非常容易。Java程序设计案例教程第1章 Java语言概述面向对象面向对象第19页lC+是一种经典的面向对象程序设计语言,是一种经典的面向对象程序设计语言,Java继承了继承了C+中面向对象的理论,但是简化了这种中面向对象的理论,但是简化了这种面向对象的技术,去掉了一些复杂的技术,例如面向对象的技术,去掉了一些复杂的技术,例如多

25、继承、运算符重载等。经过这样的处理,多继承、运算符重载等。经过这样的处理,Java中的面向对象技术变得更简单。中的面向对象技术变得更简单。l通过大量借鉴过去几十年中的诸多对象软件环境,通过大量借鉴过去几十年中的诸多对象软件环境,Java设法在纯进化论者的设法在纯进化论者的“任何事物都是对象任何事物都是对象”模式和实用主义者的模式和实用主义者的“够用就好够用就好”模式之间找到模式之间找到了平衡。了平衡。Java中的对象模型既简单又易于扩展,中的对象模型既简单又易于扩展,而基本类型而基本类型(例如整型例如整型)仍然是高性能的非对象类型。仍然是高性能的非对象类型。Java程序设计案例教程第1章 Ja

26、va语言概述可移植性可移植性第20页l可移植性可移植性(跨平台跨平台)是是Java语言最大的优势,在语言最大的优势,在Java中,并不是直接把源文件编译成硬件可以识中,并不是直接把源文件编译成硬件可以识别的机器指令,别的机器指令,Java的编译器把的编译器把Java源代码编译源代码编译为字节码文件,这种字节码文件就是编译为字节码文件,这种字节码文件就是编译 Java源源程序时得到的程序时得到的class文件,文件,Java语言的跨平台主语言的跨平台主要是指字节码文件可以在任何软硬件平台上运行,要是指字节码文件可以在任何软硬件平台上运行,而执行这种而执行这种class文件的就是文件的就是Java

27、虚拟机,虚拟机,Java虚拟机是软件模拟出的计算机,可以执行编译虚拟机是软件模拟出的计算机,可以执行编译Java源文件得到的字节码文件,而各种平台的差源文件得到的字节码文件,而各种平台的差异就是由异就是由Java虚拟机来处理的,由虚拟机来处理的,由Java虚拟机把虚拟机把字节码文件解释成目标平台可以识别的机器指令,字节码文件解释成目标平台可以识别的机器指令,从而实现了从而实现了Java的一次编译,多处运行的优势。的一次编译,多处运行的优势。Java程序设计案例教程第1章 Java语言概述安全性安全性第21页lJava语言放弃了指针操作,不提供对存储空间直语言放弃了指针操作,不提供对存储空间直接

28、访问的方法,所有的存取过程都有接访问的方法,所有的存取过程都有 Java语言自语言自身来处理,这样就可以保证系统的地址空间不会身来处理,这样就可以保证系统的地址空间不会被有意或者无意的破坏被有意或者无意的破坏。从而。从而保证了系统的安全保证了系统的安全性和稳定性。性和稳定性。l另外,另外,Java 虚拟机在运行字节码文件时,会把虚拟机在运行字节码文件时,会把Java程序的代码和数据限制在具体的内存空间内,程序的代码和数据限制在具体的内存空间内,不允许不允许Java程序范围指定内存地址之外的空间,程序范围指定内存地址之外的空间,这样就可以保证这样就可以保证Java程序不会破坏系统的内存空程序不会

29、破坏系统的内存空间,从而保证系统的安全性。间,从而保证系统的安全性。Java程序设计案例教程第1章 Java语言概述分布式分布式第22页lJava是针对是针对Internet的分布式环境而设计的,因的分布式环境而设计的,因为它能处理为它能处理TCP/IP协议。实际上,使用协议。实际上,使用URL访问访问资源与访问文件没有多大区别。资源与访问文件没有多大区别。Java既支持各种既支持各种层次的网络连接,又以层次的网络连接,又以Socket类支持可靠的流类支持可靠的流(stream)网络连接,所以用户可以产生分布式的网络连接,所以用户可以产生分布式的客户机和服务器。客户机和服务器。lJava还支持

30、远程方法调用还支持远程方法调用(Remote Method Invocation,RMI)。这个特性允许程序通过网络。这个特性允许程序通过网络调用方法调用方法Java程序设计案例教程第1章 Java语言概述解释执行和高性能解释执行和高性能第23页lJava通过将源代码编译成通过将源代码编译成Java字节码的中间表示字节码的中间表示形式,可以创建跨平台的程序。形式,可以创建跨平台的程序。Java字节码提供字节码提供对体系结构中性的目标文件格式,代码设计成可对体系结构中性的目标文件格式,代码设计成可有效地传送程序到多个平台,可以在所有实现了有效地传送程序到多个平台,可以在所有实现了Java虚拟机的

31、系统上运行。虚拟机的系统上运行。l在在Java以前,大部分对跨平台解决方案的尝试对以前,大部分对跨平台解决方案的尝试对性能的影响太大。而性能的影响太大。而Java字节码经过了仔细设计,字节码经过了仔细设计,通过使用即时编译器,可以很容易地将字节码直通过使用即时编译器,可以很容易地将字节码直接转换为高性能的本机代码。接转换为高性能的本机代码。Java运行时系统提运行时系统提供了这个特性,并且没有丢失平台独立代码的供了这个特性,并且没有丢失平台独立代码的优优点。点。Java程序设计案例教程第1章 Java语言概述健壮性健壮性第24页l为了获得可靠性,为了获得可靠性,Java在一些关键领域进行了限在

32、一些关键领域进行了限制,从而迫使程序员在程序开发中及早地发现错制,从而迫使程序员在程序开发中及早地发现错误。误。Java是一个强类型语言,它允许扩展编译时是一个强类型语言,它允许扩展编译时检查潜在类型不匹配问题的功能。检查潜在类型不匹配问题的功能。Java要求显式要求显式的方法声明,它不支持的方法声明,它不支持C语言风格的隐式声明。语言风格的隐式声明。这些严格的要求保证编译程序能捕捉调用错误,这些严格的要求保证编译程序能捕捉调用错误,这就导致更可靠的程序这就导致更可靠的程序。l异常处理是异常处理是Java使得程序更稳健的另一个特征使得程序更稳健的另一个特征。在在Java程序设计中,可以使用程序

33、设计中,可以使用try/catch/finally语语句,对各种异常和错误进行句,对各种异常和错误进行处理,处理,从而保证了应从而保证了应用程序在用户的控制中运行,继而保证了程序的用程序在用户的控制中运行,继而保证了程序的稳定和健壮稳定和健壮。Java程序设计案例教程第1章 Java语言概述多线程多线程第25页lJava的设计目标之一是满足对创建交互式、网络的设计目标之一是满足对创建交互式、网络化程序的现实需求。为了满足这一目标,化程序的现实需求。为了满足这一目标,Java支支持多线程编程,允许编写同时执行许多工作的程持多线程编程,允许编写同时执行许多工作的程序。序。Java运行时系统为多线程

34、同步提供了完善的运行时系统为多线程同步提供了完善的解决方案,能够创造出运行平稳的交互式系统。解决方案,能够创造出运行平稳的交互式系统。Java提供了易用的多线程方法,使得程序开发人提供了易用的多线程方法,使得程序开发人员只需要考虑程序的特定行为,而不需要考虑多员只需要考虑程序的特定行为,而不需要考虑多任务子系统任务子系统。Java程序设计案例教程第1章 Java语言概述动态性动态性第26页lJava语言设计成适应于变化的环境,它是一个动语言设计成适应于变化的环境,它是一个动态的语言。态的语言。Java程序本身带有大量的运行时类型程序本身带有大量的运行时类型信息,这些信息可以用于在运行时验证和解

35、决对信息,这些信息可以用于在运行时验证和解决对象访问问题。对于那些可以在运行的系统中动态象访问问题。对于那些可以在运行的系统中动态更新小段字节码的更新小段字节码的Java环境的健壮性来说,这一环境的健壮性来说,这一特性也是很关键的。特性也是很关键的。Java程序设计案例教程第1章 Java语言概述第27页主要内容主要内容1.1 Java的起源与发展史的起源与发展史1.2 Java的特点的特点1.3 Java虚拟机虚拟机1.4 下载并安装下载并安装JDK1.5 使用使用Eclipse开发开发Java程序程序1.6 本章小结本章小结1.7 思考和练习思考和练习 Java程序设计案例教程第1章 Ja

36、va语言概述1.3 Java虚拟机虚拟机lJava语言的一个非常重要的特点就是与平语言的一个非常重要的特点就是与平台无关性。而使用台无关性。而使用Java虚拟机虚拟机(Java Virtual Machine,缩写为,缩写为JVM)是实现这一是实现这一特点的关键。下面就来看一下什么是特点的关键。下面就来看一下什么是JVM以及以及JVM的工作原理。的工作原理。第28页Java程序设计案例教程第1章 Java语言概述什么是什么是JVMlJVM是是Java Virtual Machine的缩写,它是一种用于计算的缩写,它是一种用于计算设备的规范,是一个虚构出来的计算机,是通过在实际的设备的规范,是一

37、个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。计算机上仿真模拟各种计算机功能来实现的。Java虚拟机虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。回收堆和一个存储方法域。JVM屏蔽了与具体操作系统平屏蔽了与具体操作系统平台相关的信息,使台相关的信息,使Java程序只需生成在程序只需生成在Java虚拟机上运虚拟机上运行的目标代码行的目标代码(字节码字节码)就可以在多种平台上不加修改地运就可以在多种平台上不加修改地运行,这就是行,这就是Java能够能够“一次编译,到处运行一次编译,到处运

38、行”的原因。的原因。lJVM是是JRE的一部分,它有自己完善的硬件架构,如处理的一部分,它有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。器、堆栈、寄存器等,还具有相应的指令系统。第29页Java程序设计案例教程第1章 Java语言概述JVM的工作原理的工作原理lJVM是是Java的核心的核心与基础,它是一种与基础,它是一种利用软件方法实现利用软件方法实现的抽象的计算机基的抽象的计算机基于底层的操作系统于底层的操作系统和硬件平台,可以和硬件平台,可以在上面执行在上面执行Java的的字节码程序。字节码程序。第30页Java程序设计案例教程第1章 Java语言概述JVM生命周

39、期生命周期l一个运行中的一个运行中的JVM有着一个清晰的任务:执行有着一个清晰的任务:执行Java程序。程序。程序开始执行时他才运行,程序结束时他就停止。如果在程序开始执行时他才运行,程序结束时他就停止。如果在同一台机器上运行同一台机器上运行3个个Java程序,就会有程序,就会有3个运行中的个运行中的JVM。l一个一个JVM实例对应了一个独立运行的实例对应了一个独立运行的Java程序,它是进程程序,它是进程级别的;级别的;JVM执行引擎实例则对应了属于用户运行程序的执行引擎实例则对应了属于用户运行程序的线程,它是线程级别的。线程,它是线程级别的。第31页Java程序设计案例教程第1章 Java

40、语言概述JVM体系结构体系结构lJVM的内部体系结构分为三部分:类装载器的内部体系结构分为三部分:类装载器(ClassLoader)、执行引擎和运行时数据区。、执行引擎和运行时数据区。第32页Java程序设计案例教程第1章 Java语言概述JVM垃圾回收垃圾回收lJVM中自动的对象内存回收机制称为垃圾回收中自动的对象内存回收机制称为垃圾回收(Garbage Collection,简称,简称GC)。lGC是将内存中不再被使用的对象进行回收。是将内存中不再被使用的对象进行回收。GC中用于回收的方法称为收集器,由于中用于回收的方法称为收集器,由于GC需要消耗需要消耗一些资源和时间,一些资源和时间,J

41、ava在对对象的生命周期特征在对对象的生命周期特征进行分析后,按照新生代、旧生代的方式来对对进行分析后,按照新生代、旧生代的方式来对对象进行收集,以尽可能的缩短象进行收集,以尽可能的缩短GC对应用造成的暂对应用造成的暂停。停。l对新生代的对象的收集称为对新生代的对象的收集称为minor GC;对旧生代;对旧生代的对象的收集称为的对象的收集称为Full GC;程序中主动调用;程序中主动调用System.gc();语句强制执行的语句强制执行的GC为为Full GC。第33页Java程序设计案例教程第1章 Java语言概述第34页主要内容主要内容1.1 Java的起源与发展史的起源与发展史1.2 J

42、ava的特点的特点1.3 Java虚拟机虚拟机1.4 下载并安装下载并安装JDK1.5 使用使用Eclipse开发开发Java程序程序1.6 本章小结本章小结1.7 思考和练习思考和练习 Java程序设计案例教程第1章 Java语言概述1.4 下载并安装下载并安装JDK lJDK(全名全名Java Development Kit,Java开发工开发工具集具集)是整个是整个Java的核心,其中包括了的核心,其中包括了Java运行运行环境环境JRE、一些、一些Java工具和工具和Java基础类库基础类库(rt.jar)。第35页Java程序设计案例教程第1章 Java语言概述安装安装JDKlJDK

43、的安装文件可以从的安装文件可以从http:/ Java语言概述配制环境变量配制环境变量l在在 JDK安装结束之后,必需进行环境变量的设置,安装结束之后,必需进行环境变量的设置,然后才可以使用然后才可以使用 JDK提供的开发工具。提供的开发工具。l新建新建JAVA_HOME和和classpathl配制配制path变量变量第37页Java程序设计案例教程第1章 Java语言概述配制环境变量配制环境变量l在在 JDK安装结束之后,必需进行环境变量的设置,安装结束之后,必需进行环境变量的设置,然后才可以使用然后才可以使用 JDK提供的开发工具。提供的开发工具。l新建新建JAVA_HOME和和class

44、path JAVA_HOME的值为的值为JDK在系统中的安装路径在系统中的安装路径“C:Program Files(x86)Javajdk1.8.0_111”classpath的值为的值为“.;%JAVA_HOME%libdt.jar;%JAVA_HOME%libtools.jar”l配制配制path变量变量添加添加“%JAVA_HOME%bin;”第38页Java程序设计案例教程第1章 Java语言概述HelloWorld程序程序lJava语言的语言的HelloWorld程序的代码如下:程序的代码如下:lpublic class Hello lpublic static void main(

45、String args)lSystem.out.println(Hello World);ll第39页Java程序设计案例教程第1章 Java语言概述HelloWorld程序程序l文本编辑器输入代码文本编辑器输入代码lJava编译器要求源文件的后缀名为编译器要求源文件的后缀名为.java,并且文,并且文件的名称要与该文件中包含的公有类件的名称要与该文件中包含的公有类(使用使用public修饰的类修饰的类)的名称一致的名称一致(包括大小写也要一致,因为包括大小写也要一致,因为Java是大小写敏感的是大小写敏感的)l编译编译 C:javac Hello.javal运行运行 C:java Hello

46、第40页Java程序设计案例教程第1章 Java语言概述第41页主要内容主要内容1.1 Java的起源与发展史的起源与发展史1.2 Java的特点的特点1.3 Java虚拟机虚拟机1.4 下载并安装下载并安装JDK1.5 使用使用Eclipse开发开发Java程序程序1.6 本章小结本章小结1.7 思考和练习思考和练习 Java程序设计案例教程第1章 Java语言概述1.5 使用使用Eclipse开发开发Java程序程序l前面我们使用记事本编写了一个简单的前面我们使用记事本编写了一个简单的Java程序,程序,但是对于较复杂的应用程序,通常需要借助集成但是对于较复杂的应用程序,通常需要借助集成开

47、发环境开发环境(Integrated Development Environment,IDE)来简化开发工作,从而提高来简化开发工作,从而提高开发效率。开发效率。Eclipse是一款主要用是一款主要用Java编写的免编写的免费费Java IDE,使用,使用Eclipse可以创建各种跨平台可以创建各种跨平台的可用于手机、网络、桌面和企业领域的的可用于手机、网络、桌面和企业领域的Java应应用程序。本节将简要介绍用程序。本节将简要介绍Eclipse的安装与使用。的安装与使用。l 第42页Java程序设计案例教程第1章 Java语言概述IDE简介简介lIDE是一种用于辅助开发人员开发应用程序的应用是

48、一种用于辅助开发人员开发应用程序的应用软件,一般包括代码编辑器、编译器、调试器和软件,一般包括代码编辑器、编译器、调试器和图形用户界面工具,有的还包括版本控制系统、图形用户界面工具,有的还包括版本控制系统、性能分析器等更多辅助工具,因此性能分析器等更多辅助工具,因此IDE都具有编写都具有编写、编译、调试等多种功能。、编译、调试等多种功能。lIDE的种类非常多,有的的种类非常多,有的IDE能同时支持多种应用能同时支持多种应用程序的开发,例如,程序的开发,例如,Eclipse能用于能用于Java、PHP、C+等多种语言开发;有的等多种语言开发;有的IDE只针对特定的语言只针对特定的语言开发,如开发

49、,如JSource只能用于只能用于Java的开发,的开发,Zend Studio只能用于只能用于PHP的开发的开发第43页Java程序设计案例教程第1章 Java语言概述使用使用Eclipse新建新建Java 工程工程lEclipse是一个开放源代码的、基于是一个开放源代码的、基于Java的可扩的可扩展开发平台。就其本身而言,它只是一个框架和展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组构建开发环境。但是,一组服务,用于通过插件组构建开发环境。但是,Eclipse附带了一个标准的插件集,包括附带了一个标准的插件集,包括Java开开发工具发工具(Java Developmen

50、t Tools,JDT),这就,这就使其功能变得非常强大。使其功能变得非常强大。l双击双击Eclipse安装目录下的安装目录下的eclipse.exe文件即可文件即可启动启动Eclipse,此时会加载所需文件,之后会显示,此时会加载所需文件,之后会显示workspace选择界面,该界面用于设置应用程序选择界面,该界面用于设置应用程序的默认存储位置。的默认存储位置。第44页Java程序设计案例教程第1章 Java语言概述使用使用Eclipse新建新建Java 工程工程l设置好工作空间后,单击设置好工作空间后,单击OK按钮进入按钮进入Eclipse欢欢迎界面。迎界面。l选择选择File|New|“

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

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com