第2形y舞论 Touuspspuaip
第2章 Java导论
主要内容 2.1Java语言的特点 2.1.1简单的面向对象程序设计语言 2.1.2健壮安全的分布式语言 2.1.3结构中立、可移植性强的解释型语言 2.1.4高效能 2.1.5支持多线程的动态语言 ·2.1.6Java与几种常用语言的比较 2.2Java执行环境 2.1jVM机制—Java平台的基础 2.2.2自动垃圾收集 2.3保护域杋制与沙箱模型 ·2.2.4类加载器—启动引擎的点火器 ■2.3JDK的组成与安装设置 2.3.1]ava平台的组成结构 2.3.2 SET PATH和 SET CLASSPATH的作用 2.4典型例子及常见问题 2.4.1编译器、解释器、小程序观察器和反编译器 2.4.2最简单的例子 2.4.3应用程序的主方法 24.4小程序的运行 2021年2月20日11时34分 java面向对象程序设计教程
2021 年 2 月20 日11 时34 分 Java面向对象程序设计教程 2 主要内容 ◼ 2.1 Java语言的特点 • 2.1.1 简单的面向对象程序设计语言 • 2.1.2 健壮安全的分布式语言 • 2.1.3 结构中立、可移植性强的解释型语言 • 2.1.4 高效能 • 2.1.5 支持多线程的动态语言 • 2.1.6 Java与几种常用语言的比较 ◼ 2.2 Java执行环境 • 2.2.1 JVM机制——Java平台的基础 • 2.2.2 自动垃圾收集 • 2.2.3 保护域机制与沙箱模型 • 2.2.4 类加载器——启动引擎的点火器 ◼ 2.3 JDK的组成与安装设置 • 2.3.1 Java平台的组成结构 • 2.3.2 SET PATH和SET CLASSPATH的作用 ◼ 2.4 典型例子及常见问题 • 2.4.1 编译器、解释器、小程序观察器和反编译器 • 2.4.2 最简单的例子 • 2.4.3 应用程序的主方法 • 2.4.4 小程序的运行
2.1Java语言的特点
2.1 Java语言的特点
Java的由来 ■199年初, Sun Microsystems公司设立一项较大规模 “消费者电子产品先进软件发展项目”,该项目是为 了发展小型、可靠、可移植、分布式、实时的嵌入式 系统。 项目小组开发了一种与平台无关的新语言,命名为 “Oak。其灵感来源于项目主持人 James Gosling办公 室外的一棵橡树(Oak),它就是Java语言的前身 但因Oak名称与其它产品雷同,最后将开发的新语 取名为“Java?。据说是项目小组成员经常在公司附近 家咖啡厅喝咖啡,因此把咖啡原产地Java作为新 言的名称。 ■1995年, Sun microsystems公司正式发布Java产品。 2021年2月20日11时34分 java面向对象程序设计教程
2021年2月20日11时34分 Java面向对象程序设计教程 4 Java的由来 ◼ 1991年初,Sun Microsystems公司设立一项较大规模 “消费者电子产品先进软件发展项目”,该项目是为 了发展小型、可靠、可移植、分布式、实时的嵌入式 系统。 ◼ 项目小组开发了一种与平台无关的新语言,命名为 “Oak”。其灵感来源于项目主持人James Gosling办公 室外的一棵橡树(Oak),它就是Java语言的前身。 ◼ 但因Oak名称与其它产品雷同,最后将开发的新语言 取名为“Java”。据说是项目小组成员经常在公司附近 一家咖啡厅喝咖啡,因此把咖啡原产地Java作为新语 言的名称。 ◼ 1995年,Sun Microsystems公司正式发布Java产品
与Java有关的一些图片 Java Java的标识 ava之父 Java的吉祥物 James Gosling Duke 2021年2月20日11时34分 java面向对象程序设计教程
2021年2月20日11时34分 Java面向对象程序设计教程 5 与Java有关的一些图片 Java的标识 Java的吉祥物 Duke Java之父 James Gosling
Java语言的特点 ■在Java语言白皮书中,Java被描述为“是 种简单、面向对象、分布式、解释、健壮 安全、结构中立、可移植、高效能、多线 程、动态的讠 口口 a A simple, object-oriented, network-savvy, interpreted, robust, secure, architecture neutral, portable, high-performance, multithreaded ynamic language James Gosling, Henry McGilton. The Java M Language Environment, A White Paper 2021年2月20日11时34分 java面向对象程序设计教程
2021年2月20日11时34分 Java面向对象程序设计教程 6 Java语言的特点 ◼ 在Java语言白皮书中,Java被描述为“是一 种简单、面向对象、分布式、解释、健壮、 安全、结构中立、可移植、高效能、多线 程、动态的语言。 ◼ A simple, object-oriented, network-savvy, interpreted, robust, secure, architecture neutral, portable, high-performance, multithreaded, dynamic language。 —James Gosling, Henry McGilton. The Java™ Language Environment,A White Paper
简单的面向对象程序设计语言 “爪哇”—Java总给人以小巧玲珑 和C艹+很相近,但删除许多极少被使用、不容易 理解和令人混淆的C艹+功能,主要包括运算符重 载、多重继承以及广泛的自动强迫同型 自动垃圾收集( Automatic garbage collection)功 能,这不仅简化了Java程序的内存分配与释放工 作,而且能大幅度减少程序中的漏洞。 Java程序非常小,对于在嵌入式的系统中使用是 很重要的,同时也可以通过网络轻易下载 2021年2月20日11时34分 java面向对象程序设计教程
2021年2月20日11时34分 Java面向对象程序设计教程 7 简单的面向对象程序设计语言 ◼ “爪哇”——Java总给人以小巧玲珑 ◼ 和C++很相近,但删除许多极少被使用、不容易 理解和令人混淆的C++功能,主要包括运算符重 载、多重继承以及广泛的自动强迫同型。 ◼ 自动垃圾收集(Automatic garbage collection)功 能,这不仅简化了Java程序的内存分配与释放工 作,而且能大幅度减少程序中的漏洞。 ◼ Java程序非常小,对于在嵌入式的系统中使用是 很重要的,同时也可以通过网络轻易下载
健壮安全的分布式语言 Java拥有广泛的能轻易处理TCP/P协议(如 HTP与FTP等)的类库,更容易创建网络 连接。 除了运行时异常检查外,Java提供了广泛的 编译时异常检査,以便尽早的发现可能存 在的错误。同时,在Java中对象的创建机制 用new操作符)和自动垃圾收集机制 大大减少了因内存管理不当引发的错误。 Java的验证技术是以公钥加密算法为基础。 2021年2月20日11时34分 java面向对象程序设计教程
2021年2月20日11时34分 Java面向对象程序设计教程 8 健壮安全的分布式语言 ◼ Java拥有广泛的能轻易处理TCP/IP协议(如 HTTP与FTP等)的类库,更容易创建网络 连接。 ◼ 除了运行时异常检查外,Java提供了广泛的 编译时异常检查,以便尽早的发现可能存 在的错误。同时,在Java中对象的创建机制 (只能用new操作符)和自动垃圾收集机制 大大减少了因内存管理不当引发的错误。 ◼ Java的验证技术是以公钥加密算法为基础
结构中立、可移植性强的解释型语言 为了让Java应用程序能够在网络上任何地方执行, 其编译器会产出一种结构中立的字节代码 ( Bytecode)。字节代码可以在提供Java运行时系 统的多种不同处理器上面执 ■Java严格定义了基本数据类型的大小和算术运算 符的行为,因此不存在软硬件平台不兼容的情况。 ■Java系统本身具备相当好的移植性。它的编译器 用Java写成,而Java运行时程序则是参照 POSIX 个可移植接口工业标准)规格使用ANSⅠC写 成的 2021年2月20日11时34分 java面向对象程序设计教程
2021年2月20日11时34分 Java面向对象程序设计教程 9 结构中立、可移植性强的解释型语言 ◼ 为了让Java应用程序能够在网络上任何地方执行, 其编译器会产出一种结构中立的字节代码 (Bytecode)。字节代码可以在提供Java运行时系 统的多种不同处理器上面执行。 ◼ Java严格定义了基本数据类型的大小和算术运算 符的行为,因此不存在软硬件平台不兼容的情况。 ◼ Java系统本身具备相当好的移植性。它的编译器 用Java写成,而Java运行时程序则是参照POSIX (一个可移植接口工业标准)规格使用ANSI C写 成的
高效能 ■字节代码可以动态地为执行应用程序的特定CPU 解释成机器码。字节代码格式在设计上即顾及机 器码的产生,因此实际的机器码产生程序相当简 单 ■解释器运行时不需检査运行环境,自动垃圾收集 器设为优先级最低后台线程,以保证内存得到更 有效的应用。 对于运算量很大的程序可以采用原生代码编写 再经由Java平台转换。 ■Just-in-Time编译技术更是让字节代码的执行速度 大幅度提升 2021年2月20日11时34分 java面向对象程序设计教程
2021年2月20日11时34分 Java面向对象程序设计教程 10 高效能 ◼ 字节代码可以动态地为执行应用程序的特定CPU 解释成机器码。字节代码格式在设计上即顾及机 器码的产生,因此实际的机器码产生程序相当简 单。 ◼ 解释器运行时不需检查运行环境,自动垃圾收集 器设为优先级最低后台线程,以保证内存得到更 有效的应用。 ◼ 对于运算量很大的程序可以采用原生代码编写, 再经由Java平台转换。 ◼ Just-In-Time编译技术更是让字节代码的执行速度 大幅度提升