Java基础教程ppt课件汇总(完整版).ppt
《Java基础教程ppt课件汇总(完整版).ppt》由会员分享,可在线阅读,更多相关《Java基础教程ppt课件汇总(完整版).ppt(590页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第1章章 Java语言概述语言概述本章的主要内容:本章的主要内容:1.1 Java1.1 Java语言的发展里程语言的发展里程1.2 java 1.2 java 的特点的特点1.3 1.3 平台无关性平台无关性1.4 Java1.4 Java虚拟机虚拟机JVMJVM1.5 Java 1.5 Java 与与C/C+C/C+之关系之关系1.6 Java1.6 Java运行平台运行平台1.7 Java1.7 Java程序开发程序开发1.8 Java 1.8 Java 开发工具箱开发工具箱1.9 JDK1.51.9 JDK1.5编译器的新规定编译器的新规定1.1 Java语言的发展里程语言的发展里程
2、JavaJava语言前身是语言前身是OakOak语言,于语言,于19911991年推出,但年推出,但仅限于仅限于Sun MicrosystemsSun Microsystems公司内部使用。公司内部使用。19951995年年OakOak语言改名为语言改名为“Java”“Java”,并正式向公众推,并正式向公众推出,主要贡献者是出,主要贡献者是James GoslingJames Gosling。1.21.2版本的版本的JavaJava是是JavaJava语言发展过程中一个关语言发展过程中一个关键阶段,从此,键阶段,从此,SunSun公司将公司将JavaJava更名为更名为Java2Java2。
3、经过十年的发展,经过十年的发展,JavaJava语言已经发展到语言已经发展到1.61.6版版本。本。1.2 java 的特点的特点(1/4)1 1语法简单语法简单(1 1)JavaJava的风格类似于的风格类似于C+C+(2 2)JavaJava摒弃了摒弃了C+C+中容易引发程序错误的地方,中容易引发程序错误的地方,如指针和内存管理;如指针和内存管理;(3 3)JavaJava提供了丰富的类库。提供了丰富的类库。2 2面向对象面向对象面向对象编程是一种先进的编程思想,更加容易解面向对象编程是一种先进的编程思想,更加容易解决复杂的问题。面向对象可以说是决复杂的问题。面向对象可以说是JavaJav
4、a最重要的特最重要的特性。性。JavaJava语言的设计完全是面向对象的,语言的设计完全是面向对象的,1.2 java 的特点的特点(2/4)3 3分布式分布式JAVAJAVA从诞生就起就与网络联系在一起,它强调网络特性,内从诞生就起就与网络联系在一起,它强调网络特性,内置置TCP/IPTCP/IP,HTTPHTTP,FTPFTP协议类库,便于开发网上应用系统。协议类库,便于开发网上应用系统。4 4安全性安全性(1 1)在)在JavaJava语言里,象指针和释放内存等语言里,象指针和释放内存等C+C+功能被删除,功能被删除,避免了非法内存操作。(避免了非法内存操作。(2 2)当)当JavaJa
5、va用来创建浏览器时,语言用来创建浏览器时,语言功能和一些浏览器本身提供的功能结合起来,使它更安全。功能和一些浏览器本身提供的功能结合起来,使它更安全。JavaJava语言在机器上执行前,要经过很多次的测试。其三级安语言在机器上执行前,要经过很多次的测试。其三级安全检验机制可以有效防止非法代码侵入,阻止对内存的越权全检验机制可以有效防止非法代码侵入,阻止对内存的越权访问。访问。5 51.2 java 的特点的特点(3/4)5 5健壮性健壮性JavaJava致力于检查程序在编译和运行时的错误。异常致力于检查程序在编译和运行时的错误。异常检查可尽早的发现可能存在的错误。类型检查帮助检查可尽早的发现
6、可能存在的错误。类型检查帮助检查出许多开发早期出现的错误。检查出许多开发早期出现的错误。6 6解释运行,高效率解释运行,高效率JavaJava解释器(运行系统)能直接运行目标代码指令。解释器(运行系统)能直接运行目标代码指令。JavaJava程序经编译器编译,生成的字节码经过精心设程序经编译器编译,生成的字节码经过精心设计,并进行了优化,因此运行速度较快,客服了以计,并进行了优化,因此运行速度较快,客服了以往解释性语言运行效率低的缺点。往解释性语言运行效率低的缺点。1.2 java 的特点的特点(4/4)7 7与平台无关与平台无关JAVAJAVA编译器将编译器将JAVAJAVA程序编译成二进制
7、代码,即字节码。字节程序编译成二进制代码,即字节码。字节码有统一的格式,不依赖于具体的硬件环境。码有统一的格式,不依赖于具体的硬件环境。8 8多线程多线程JavaJava提供的多线程功能使得在一个程序里可同时执行多个小提供的多线程功能使得在一个程序里可同时执行多个小任务。任务。9 9动态性动态性JavaJava的动态特性是其面向对象设计方法的发展。它允许程序的动态特性是其面向对象设计方法的发展。它允许程序动态地装入运行过程中所需要的类。动态地装入运行过程中所需要的类。1.3 平台无关性平台无关性(1/2)平台无关类型包括源代码级和目标代码级两种类型。平台无关类型包括源代码级和目标代码级两种类型
8、。C C和和C+C+属于源代码级平台无关,意味着用其写的应用程序不属于源代码级平台无关,意味着用其写的应用程序不用修改只需重新编译就可以在不同平台上运行。用修改只需重新编译就可以在不同平台上运行。JavaJava属于目标代码级平台无关,主要靠属于目标代码级平台无关,主要靠JavaJava虚拟机虚拟机JVMJVM来实现。来实现。对高级语言的翻译方式有解释和编译两种对高级语言的翻译方式有解释和编译两种解释方式就是一边翻译一边运行解释方式就是一边翻译一边运行而编译方式则是一次性翻译好,生成目标程序。而编译方式则是一次性翻译好,生成目标程序。1.3 平台无关性平台无关性(2/2)解决移植性的方法有以下
9、两种方式:解决移植性的方法有以下两种方式:方式方式1 1:到一台机器上将源程序重新编译成适合该:到一台机器上将源程序重新编译成适合该台机器的机器代码。台机器的机器代码。方式方式2 2:将高级语言源程序编译成一种与机器无关:将高级语言源程序编译成一种与机器无关的中间代码(如的中间代码(如JavaJava语言的字节码),该中间代码语言的字节码),该中间代码程序不能被操作系统直接执行,需要由解释其来解程序不能被操作系统直接执行,需要由解释其来解释和执行。释和执行。JavaJava语言采用方式语言采用方式2 2,将由解释程序扩展了的,将由解释程序扩展了的指令系统的机器称为指令系统的机器称为JavaJa
10、va虚拟机,简称虚拟机,简称JVMJVM。1.4 Java虚拟机虚拟机JVM虚拟机虚拟机是一种对计算机物理硬件计算环境的软件实现。是一种对计算机物理硬件计算环境的软件实现。虚拟机是一种抽象机器,内部包含一个解释器虚拟机是一种抽象机器,内部包含一个解释器(InterpreterInterpreter),可以将其它高级语言编译为虚拟),可以将其它高级语言编译为虚拟机的解释器可以执行的代码(称这种代码为中间语言机的解释器可以执行的代码(称这种代码为中间语言 Intermediate LanguageIntermediate Language),实现高级语言程序的可),实现高级语言程序的可移植性平台无
11、关性移植性平台无关性 (System IndependenceSystem Independence),无论),无论是运行在嵌入式设备还是多个处理器的服务器上,虚是运行在嵌入式设备还是多个处理器的服务器上,虚拟机都执行相同的指令,所使用的支持库也具有标准拟机都执行相同的指令,所使用的支持库也具有标准的的APIAPI和完全相同或相似的行为。和完全相同或相似的行为。1.4 Java虚拟机虚拟机JVMJavaJava虚拟机虚拟机(Java Virtual MachineJava Virtual Machine,简称,简称JVMJVM)是)是一种抽象机器,它附着在具体操作系统上,本身具有一种抽象机器,
12、它附着在具体操作系统上,本身具有一套虚拟机器指令,并有自己的栈,寄存器等,运行一套虚拟机器指令,并有自己的栈,寄存器等,运行JAVAJAVA程序不可少的机制。编译后的程序不可少的机制。编译后的JAVAJAVA程序指令并不程序指令并不直接在硬件系统直接在硬件系统CPUCPU上执行,而是在上执行,而是在JVMJVM执行。在执行。在JVMJVM上有一个上有一个JavaJava解释器用来解释解释器用来解释JavaJava编译器编译后的程编译器编译后的程序。任何一台机器只要配备了解释器,就可以运行这序。任何一台机器只要配备了解释器,就可以运行这个程序,而不管这种字节码是在何种平台上生成的。个程序,而不管
13、这种字节码是在何种平台上生成的。图1-1 计算机硬件、操作系统、JVM与各种可执行程序之间的关系机器代码机器代码硬件硬件操作系统操作系统JVM本地可执行文件本地可执行文件(.exe,.com文件)文件)Java字节码文件字节码文件(.class文件)文件)1.4 Java虚拟机虚拟机JVMJVM体系结构图体系结构图类装载器字节码解释器安全管理器垃圾收集器线程管理图形Java虚拟机虚拟机操作系统操作系统字节码*.class 文文件件图1-2 Java虚拟机体系结构示意图1.5 Java 与与C/C+之关系之关系相近之处相近之处JavaJava中许多基本语句的语法和中许多基本语句的语法和C+C+一
14、样,像常用的一样,像常用的循环语句、控制语句等和循环语句、控制语句等和C+C+几乎一样几乎一样JavaJava和和C+C+是两种完全不同的语言是两种完全不同的语言1.5 Java 与与C/C+之关系之关系不同之处不同之处JavaJava去掉了去掉了C+C+语言的许多功能,语言的许多功能,JavaJava中没有中没有#include#include 和和#define#define 等预处理功能,用等预处理功能,用importimport语来语来句包含其它类和包;句包含其它类和包;JavaJava中没有中没有structurestructure,unionunion及及typedeftypede
15、f;JavaJava中没有不属于类成员的函数,没有指针和多重中没有不属于类成员的函数,没有指针和多重继承,继承,JavaJava只支持单重继承;只支持单重继承;JavaJava中禁用中禁用gotogoto,但,但gotogoto还是保留的关键字;还是保留的关键字;JavaJava中没有操作符重载;中没有操作符重载;JavaJava中没有全局变量,可以在类中定义公用、静态中没有全局变量,可以在类中定义公用、静态的数据成员实现相同功能。的数据成员实现相同功能。1.6 Java运行平台运行平台1 1三种平台简介三种平台简介 J2SEJ2SE:JavaJava标准版或标准版或Java Java 标准平
16、台。标准平台。J2SE J2SE 提供了提供了标准的标准的SDKSDK开发平台(以前称做开发平台(以前称做JDKJDK开发平台)。开发平台)。J2EEJ2EE:JavaJava企业版或企业版或JavaJava企业平台。企业平台。J2MEJ2ME:JavaJava微型版或微型版或JavaJava小型平台。小型平台。2安装安装J2SE平台平台简介简介JDK版本版本发布日期发布日期版本说明及主要内容版本说明及主要内容JDK 1.0a21995.05正式对外发布正式对外发布JDK 1.0.21996.01标准的标准的I/OI/O库、网络库、库、网络库、appletapplet、文件、文件I/OI/O以
17、及基本的窗口库等以及基本的窗口库等JDK1.11997.02内部类、新的事件处理模型、内部类、新的事件处理模型、RMIRMI、JavaBeanJavaBean,JDBC JDBC、串行化、串行化、国际化、日历类以及性能改进等国际化、日历类以及性能改进等JDK 1 21998.12浮点运算改进、浮点运算改进、String GUIString GUI库、集合、库、集合、Java 2DJava 2D图形、可访问性图形、可访问性 (可视化(可视化GUIGUI支持)、引用对象以及性能改进等支持)、引用对象以及性能改进等JDK 1.32000.05性能改进、性能改进、CORBACORBA兼容性、兼容性、J
18、avaJava音频支持以及音频支持以及JNDIJNDI等等JDK1.42001.12断言语句、断言语句、6464位地址空间(位地址空间(Solaris Solaris),新的,新的I/OI/O库、模式匹配、库、模式匹配、鼠标滑轮支持、鼠标滑轮支持、IPv6IPv6,XML XML,WebStart WebStart支持、性能改进及命支持、性能改进及命名为名为MerlinMerlin的代码等的代码等JDK1.52003.07通用性(代码模块)、允许一些云算符重载以及命名为通用性(代码模块)、允许一些云算符重载以及命名为TigerTiger的代的代码等码等1.6 Java运行平台运行平台3 3环境
19、变量环境变量JAVA_HOMEJAVA_HOME为那些需要使用为那些需要使用JavaJava命令和命令和JVMJVM的程序提的程序提供了通用的路径信息,其值应设置为供了通用的路径信息,其值应设置为JDKJDK的安装目的安装目录的路径,录的路径,JAVA_HOME=C:jdk1.5 JAVA_HOME=C:jdk1.5CLASSPATHCLASSPATH用于指明字节码文件的位置。用于指明字节码文件的位置。CLASSPATH=c:jdk1.5jrelibrt.jar;.PATHPATH是操作系统使用的变量,用于搜索在是操作系统使用的变量,用于搜索在ShellShell中中输入的希望执行的命令。输入
20、的希望执行的命令。Java编译器编译器源文件源文件编辑器编辑器字节码字节码文件文件由由Web浏览器浏览器执行执行文件名文件名.java产生产生对于对于Java小小应用程序应用程序对于对于Java应用程序应用程序由由Java解释器执行解释器执行图1-1 Java程序开发过程示意图1.7 Java程序开发程序开发1.7 Java程序开发程序开发1 1JavaJava应用程序的开发应用程序的开发编写源文件编写源文件EditplusEditplus等文本编辑器生成等文本编辑器生成Hello.javaHello.java编译源文件生成字节码编译源文件生成字节码 javac Hello.java java
21、c Hello.java加载运行字节码加载运行字节码 java Hello java Hello/Hello.javapublic class Hello public static void main(String args)System.out.println(你好,很高兴学习Java);C:javac Hello.javaC:java Hello1.7 Java程序开发程序开发2 2Java AppletJava Applet程序的开发程序的开发编写源文件编写源文件 Editplus Editplus等文本编辑器等文本编辑器Boy.javaBoy.java编译源文件生成字节码编译源文件生
22、成字节码 javac Boy.java javac Boy.java通过浏览器加载运行字节码通过浏览器加载运行字节码 Html Html文件文件myBoy.htmlmyBoy.html 或appletviewew myboy.htmlappletviewew myboy.html/Boy.javaimport java.applet.*;import java.awt.*;public class Boy extends Applet public void paint(Graphics g)g.setColor(Color.blue);g.drawString(Java是一门很优秀的语言是一
23、门很优秀的语言,12,30);g.setColor(Color.red);g.drawString(我一定认真学习我一定认真学习Java,22,56);/myBoy.html C:javac Boy.javaC:appletviewew myboy.html1.8 Java 开发工具箱开发工具箱Java Java 开发工具箱开发工具箱(JDK-Java Development Kit)(JDK-Java Development Kit)是是SunSun公司为用户提供的集成和执行公司为用户提供的集成和执行appletsapplets和应用程序和应用程序的工具的工具javac javac 编译器:
24、可以用任何文字编辑器创建编译器:可以用任何文字编辑器创建JavaJava程序程序java java 翻译器翻译器;用于执行编译过的用于执行编译过的 Java Java应用程序。应用程序。appletviewer:appletviewer:可运行可运行appletsapplets而不必运行而不必运行 Web Web浏览器。浏览器。javapjavap反汇编程序反汇编程序:从字节码文件恢复从字节码文件恢复javajava原代码。原代码。javadocjavadoc工具工具:可以为所编写的源文件生成可以为所编写的源文件生成HTMLHTML文档文档1.9 JDK1.5编译器的新规定编译器的新规定JDK
25、1.5JDK1.5的编译器的编译器javac.exejavac.exe和以前版本的编译和以前版本的编译器有了一个很大的不同,不再向下兼容,也就器有了一个很大的不同,不再向下兼容,也就是说,如果在编译源文件时没有特别约定的话,是说,如果在编译源文件时没有特别约定的话,用用JDK1.5JDK1.5的编译器生成的字节码只能在安装了的编译器生成的字节码只能在安装了JDK1.5JDK1.5或或JRE1.5JRE1.5的的JavaJava平台环境中运行。平台环境中运行。第第2章章 Java语言基础语言基础2.1 Java程序概况2.2 基本数据类型2.3 运算符和表达式2.4 Java语句2.1 Java
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 基础教程 ppt 课件 汇总 完整版
限制150内