1、第一章,Java语言概述,2,目标,了解 Java 的特点和优点 了解 Java 的运行机制 了解 Java 程序的基本结构 掌握如何编译和运行 Java 程序,3,Java发展史,1990 年Sun 公司的 James Gosling等人开始开发名称为 Oak 的语言。希望用于控制嵌入在有线电视交换盒、PDA等的微处理器。 1993 年交互式电视和 PDA 市场开始滑坡,而 Internet 正处于增长时期,因此Sun 公司将目标市场转向 Internet 应用程序。 1994年将Oak语言更名为Java。 1995年Sun 公司的 HotJava 浏览器问世。,4,什么是 JAVA,Jav
2、a 完全面向对象的编程语言。 Java 可用来生成两类程序:应用程序、 小应用程序( Applet ) 。 Java 既是一种解释执行的语言,也是一种编译执行的语言。,5,Java的基本特点3-1,简单 面向对象 分布式,Java的风格类似于C+,因而对C+程序员而言非常容易掌握Java编程技术; Java摒弃了C+中容易引发程序错误的地方,如指针操作和内存管理;,在 Java 中任何东西都是对象,因此,重点集中在数据以及应用程序中的数据操作方法。,Java提供了包容广泛的例程库,可处理像HTTP和FTP这样的TCP/IP协议。Java应用程序可通过一个特定的URL来打开并访问对象,就像访问本
3、地文件系统那样简单。,6,Java语言提供的安全 编译器提供的安全 字节码校验器 类加载器,Java的基本特点3-2,健壮性 安全 体系结构中立 可移植性,Java在编译和运行程序时都要对可能出现的问题进行检查 它提供自动垃圾收集来进行内存管理 面向对象的异常处理机制,Java 程序被编译成一种与体系结构无关的字节代码 只要安装了Java运行时系统Java程序可以在任意的处理器上运行,源代码级 目标代码级,7,Java的基本特点3-3,解释执行 高性能 多线程 动态,编译器 javac 将处理.java源文件生成类文件 类文件可通过名称为 java 的加载实用程序解释执行,将Java 字节码转
4、换为机器可执行代码。,通过JIT编译器首先将字节码编译成固有代码,将结果缓存下来,然后在需要时调用它们。,Java语言内置支持多线程的功能 Java 类库提供了 Thread 类,Java自身的设计使它适合于一个不断发展的环境。在Java类库中可以自由地加入新的方法和实例变量而不会影响用户程序的执行。,8,Java 程序的运行环境,Java虚拟机,Java是解释执行的高级编程语言,9,Java虚拟机 2 - 1,Java虚拟机是一种利用软件方法实现的抽象化的计算机,基于下层的操作系统和硬件平台,可以在上面执行Java的字节码程序。 Java虚拟机将在内部创建一个运行时系统,帮助以下列方式执行代
5、码: 加载 .class 文件 管理内存 执行垃圾收集,10,Java虚拟机 2 - 2,由于硬件平台不一致,因此Java虚拟机使用了堆栈帧的概念,用来存放下列信息: 表示方法状态的帧 字节码操作数 传递给方法的参数 局部变量,11,实时编译器,使用“实时 (Just In Time)” 编译器,也称为JIT编译器。可以提高 Java 代码的执行速度。 SUN公司在Java 2 发行版中提供了JIT编译器,JIT编译器是Java虚拟机的一部分。 JIT 的主要用途是将字节码指令集转换为针对某一特定微处理器的机器代码指令。,12,Java 运行时环境,13,垃圾收集2-1,Java 虚拟机使用两
6、个独立的堆内存,分别用于静态内存分配和动态内存分配。 其中一个是非垃圾收集堆内存,用于存储所有类定义、常量池和方法表。 另一个堆内存再分为两个可以根据要求往不同方向扩展的小块。 用于垃圾收集的算法适用于存放在动态堆内存中的对象。,14,垃圾收集 2-2,垃圾收集器将在收集对象实例之前调用 finalize 方法。 即使显式调用垃圾收集 (System.gc( ) 方法,它也不能保证立即运行。 垃圾收集线程的运行优先级很低所以可能经常会被中断。,15,Java 的编辑环境,JDK是有助于程序员开发Java 程序的 Java 开发工具包包括: 类库 编译器 调试器 Java 运行时环境( JRE
7、),16,JDK 提供的常用工具,javac 是用来编译源代码的命令。 java 是用于执行类文件的命令,而类文件将在 Java 虚拟机中运行类。 appletviewer 命令允许在万维网浏览器的环境之外运行 Applet。,17,Java Application程序基本结构,18,第一个 Java 程序,/这是名称为“HelloWorld.java”的简单程序 import java.io.*; class HelloWorld public static void main(String args ) System.out.println(“欢迎访问 Java 世界!“); ,19,在记
8、事本编辑Java程序,单击 开始,依次选择 程序-附件 -记事本,/这是名称为“HelloWorld.java”的简单程序 import java.io.*; class HelloWorld public static void main(String args ) System.out.println(“欢迎访问 Java 世界!“); ,20,编译和运行,单击 开始,依次选择 程序-附件 -命令提示符,进入程序所 保存的目录,输入命令编译 HelloWorld,输入命令执行 HelloWorld,输出 结果,21,Java API 文档2-1,加载 API 文档的步骤: 打开 Inter
9、net Explorer。 键入下列 URL http:/ 通过单击相关主题,可以浏览网页。,Java API 文档是一种非常有用的文档,描述许多 java 的内置功能,包含类、包、接口等的帮助。,22,Java API 文档2-2,选择 包,选择包中的 接口或类,可查看相应帮助,23,总结3-1,Java 是一种面向对象的编程语言,主要用于 Internet 应用程序。 Java 可用来生成两类程序:应用程序、 小应用程序( Applet ) 。 Java 既是一种解释执行的语言,也是一种编译执行的语言。,24,总结3-2,Java 的特点包括: 简单 面向对象 分布式 健壮性 安全 体系结构中立 可移植性 解释执行 高性能 多线程 动态,25,总结3-3,Java 虚拟机是 Java 编程语言的核心。 Java 运行时环境 (JRE) 包含一方面与硬件交互、另一方面又与程序交互的 JVM。 Java 开发工具包有助于开发 Java 程序。 JDK 提供多种工具,这些工具位于 JDK 的 bin 目录下,具体如下: javac java appletviewer,