没有合适的资源?快使用搜索试试~ 我知道了~
【ITjob就业培训】经典Java培训教程.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 26 浏览量
2022-06-11
08:19:16
上传
评论
收藏 9.81MB DOC 举报
温馨提示
试读
64页
【ITjob就业培训】经典Java培训教程
资源推荐
资源详情
资源评论
Java 培训教程 ITjob
就业培训
第一章: Java 开始
学习目标
Java 技术的组成
Java 虚拟机的主要功能
Java 内存垃圾自动回收机制
运行代码的步骤
编写、编译并运行简单 Java 应用程序
1
Java 培训教程 ITjob
就业培训
Java 历史
1991 年,电视机,机顶盒,录象机的开发设计需要一种可移植、方便、高
效的计算机语言。为了满足这种需求,由 Sun 公司的 Patrick Haughton
和 James Gosling 领导的技术小组开发了 JAVA。
上世纪九十年代中期,Sun 推出了 Sun Java Development Toolkits
1.0,简称 JDK1.0。JDK1.0 是一个功能强大的软件包,可以用来开发小应
用 程 序 和 多 种 操 作 系 统 ( Sun Solaris , Windows Nt , Windows
95,Macintosh)的应用程序。
1998 年 Sun 推出 Java 2 Platform,它定义了所有 Java 技术的概念和
标准,即包括已经实现的技术也包括尚未实现的技术;即包括 Sun 的实现的,
也包括其它公司的实现。目前,Java 2 SDK1.5 是 Java 2 Platform 的
最新定义。这个定义又可以细分为四个版本:
标准版:J2SE(Java SE),用于开发普通的小应用程序和应用程序。它是
我们这门课程要讲述的内容。
(Java SE 的体系结构)
企业版:J2EE(Java EE),用于企业级应用。
微型版:J2ME(Java ME),用于开发移动电话,机顶盒,个人数字设
备等。
JavaCard:适用于智能卡的 Java 平台。
2
Java 培训教程 ITjob
就业培训
(Java 各版本应用领域)
Java 技术概述
任何复杂的事物都可以分解成一些相对简单的组成部分。 Java 作为一门丰
富而复杂的新技术,它由下列这些技术层面组成:
Java 编程语言:定义变量、表达式、控制转移等基本规则。
Java 类库:Java 软件工具包(SDK)为程序员提供了几千个类,包括
基本的数学函数、数组和字符串、窗口,GUI,I/O,网络等。
Java 运行环境:包括 Java 字节代码的加载器、校验器以及 Java 虚拟
机。
Java 虚拟机:Java 技术出于跨平台,可移植的考虑,没有将程序的原
代码编译连接成 CPU 的指令序列,直接交给计算机执行。Java 技术在
不同的硬件,不同的操作系统之上,定义了完全相同的支持 Java 程序
运行的虚拟计算机。Java 原程序被编译成字节(byte)代码,在 Java
虚拟机上运行。
Java 工具:编译器,注释器(interpreter),文档生成器等工具 。
Java 小应用程序:小应用程序(Applets)是一种贮存于 WWW 服务器
上的用 Java 编写的程序,它通常由浏览器下载到客户系统中,并通过
支持 Java 运行环境的浏览器运行。它由超文本标识语言( HTML)的
Web 页来调用。
Java 应用程序:Java Applications 是一种独立的程序,它不需要
3
Java 培训教程 ITjob
就业培训
任何 Web 浏览器来执行。它们是普通的应用程序;可运行于任何具备
Java 运行环境的设备中。
其它 Java 程序:JavaBean,Servlet,JSP 等。
Java 虚拟机
Java 虚拟机在 Java 运行环境中处于核心地位。Java 虚拟机使 Java 语言
可 以 跨 多 种 平 台 运 行 , 保 障 了 SUN 提 出 的 "write once,run
anywhere"的特性,其组成为:
指令集(中央处理器[CPU]
寄存器
类文件格式
栈
垃圾收集堆
存储区
Java 虚拟机隐藏了计算机硬件和操作系统的复杂性。使我们只面对单一的
支持 Java 的计算机。当我们写好 Java 源程序后,使用编译器将源代码转
换成 JVM 的指令序列(字节代码),保存在.class 文件中。执行 Java 程
序时,JVM 负责解释字节代码,将 JVM 的指令转换成真实的机器指令,并执
行。
内存回收(垃圾收集)
垃圾回收就是将程序不再使用的内存块释放出来,以提供给其它程序使用。
程序运行时需要占用一定内存空间,当程序退出后应该把占用的内存释放,
在 c, c++语言中由程序保证内存的释放,但如果程序员忘记释放内存,就
会在内存中“垃圾”增多,影响其它程序运行;Java 语言实现自动垃圾回收处
理,减轻了程序员的负担,杜绝了因内存管理而导致的程序中的问题。
常见垃圾收集机制介绍
JVM
中 内 存 划 分 为 : 堆 栈 (
Stack
) 、 堆 (
Heap
) 、 静 态 存 储
(
Static
),
常量储存区(nal static)。
大多数垃圾收集使用了根集
(root set)
这个概念;所谓根集就是正在执行
4
Java 培训教程 ITjob
就业培训
的
Java
程序可以访问的引用变量的集合
(
包括局部变量、参数、类变量
)
,
程序可以使用引用变量访问对象的属性和调用对象的方法。垃圾收集首选需
要确定从根开始哪些是可达的和哪些是不可达的,从根集可达的对象都是活
动对象,它们不能作为垃圾被回收,这也包括从根集间接可达的对象。而根
集通过任意路径不可达的对象符合垃圾收集的条件,应该被回收。
引用计数法
(Reference Counting Collector)
一般来说,堆中的每个对象对应一个引用计数器。当每一次创建一个对象并
赋给一个变量时,引用计数器置为
1
。当对象被赋给任意变量时,引用计数
器每次加
1
,当对象出了作用域后
(
该对象丢弃不再使用
)
,引用计数器减
1
,一旦引用计数器为
0
,对象就满足了垃圾收集的条件。
基于引用计数器的垃圾收集器运行较快,不会长时间中断程序执行,一般适
合需要实时运行的程序。但引用计数器增加了程序执行的开销,因为每次对
象赋给新的变量,计数器加
1
,而每次现有对象出了作用域生,计数器减
1
。
Tracing
算法
(Tracing Collector)
基于
tracing
算法的垃圾收集器从根集开始扫描,识别出哪些对象可达,
哪些对象不可达,并用某种方式标记可达对象,例如对每个可达对象设置一
个或多个位。在扫描识别过程中,基于
tracing
算法的垃圾收集也称为标
记和清除
(mark-and-sweep)
垃圾收集器。
compacting
算法
(Compacting Collector)
为了解决堆碎片问题,基于
tracing
的垃圾回收吸收了
Compacting
算法
的思想,在清除的过程中,算法将所有的对象移到堆的一端,堆的另一端就
变成了一个相邻的空闲内存区,收集器会对它移动的所有对象的所有引用进
行 更 新 , 使 得 这 些 引 用 在 新 的 位 置 能 识 别 原 来
的 对 象 。 在 基 于
Compacting
算法的收集器的实现中,一般增加句柄和句柄表。
垃圾回收的几个特点
垃圾收集发生的不可预知性:由于实现了不同的垃圾收集算法和采用了不同
的收集机制,所以它有可能是定时发生,有可能是当出现系统空闲 CPU 资源
时发生,也有可能是和原始的垃圾收集一样,等到内存消耗出现极限时发生,
5
剩余63页未读,继续阅读
资源评论
omyligaga
- 粉丝: 54
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功