面向对象程序设计基础

上传人:san****019 文档编号:21530191 上传时间:2021-05-03 格式:PPT 页数:78 大小:538.05KB
收藏 版权申诉 举报 下载
面向对象程序设计基础_第1页
第1页 / 共78页
面向对象程序设计基础_第2页
第2页 / 共78页
面向对象程序设计基础_第3页
第3页 / 共78页
资源描述:

《面向对象程序设计基础》由会员分享,可在线阅读,更多相关《面向对象程序设计基础(78页珍藏版)》请在装配图网上搜索。

1、第 3章 面 向 对 象 程 序 设 计 基 础 本 章 主 要 内 容 3.1面 向 对 象 的 基 本 概 念 3.2 类 与 对 象 3.2.1 定 义 类 3.2.2 成 员 方 法 3.3 对 象 3.4 面 向 对 象 特 性 3.4.1 封 装 性 3.4.2继 承 性3.4.3多 态 性3.4.4 其 它 修 饰 符 的 用 法3.5接 口 和 包3.5.1 接 口3.5.2 包3.5.3 压 缩 文 件 .jar 复 习 情 况 检 查分 析 【 例 子 2-16】 的 执 行 过 程分 析 【 习 题 15】 的 执 行 过 程 3.1面 向 对 象 的 基 本 概 念 1

2、、 对 象 的 基 本 概 念 对 象 是 系 统 中 用 来 描 述 客 观 事 物 的 一 个 实 体 ,它 是 构 成 系 统 的 一 个 基 本 单 位 。 对 象 是 问 题 域或 实 现 域 中 某 些 事 物 的 一 个 抽 象 , 反 映 该 事 物在 系 统 中 需 要 保 存 的 信 息 和 发 挥 的 作 用 , 是 一组 属 性 和 有 权 对 这 些 属 性 进 行 操 作 的 一 组 服 务的 封 装 体 。 从 这 个 角 度 看 , 客 观 世 界 是 由 对 象和 对 象 之 间 的 联 系 组 成 的 。 现 实 世 界 中 的 对 象 有 两 个 共 同特

3、 征 : 形 态 和 行 为 。 图 3.2 软 件 对 象 的 变 量 和 方 法 7 2、 类 的 基 本 概 念 类 是 具 有 共 同属 性 和 行 为 的对 象 的 抽 象 。 类 可 以 定 义 为数 据 和 方 法 的集 合 。 对 象 具 有 特 殊属 性 和 行 为 方式 的 实 体 。 类对 象抽象 实例化封 装 的 实 体 =数 据 +方 法 操 作 或 行 为属 性 或 状 态方 法数 据 或 变 量 一 个 类 的 例 子 类 用 class作 为 它 的 关 键 字 , 例 如 我 们 要创 建 一 个 汽 车 类 , 则 可 表 示 为 : 用 类 创 建 对 象

4、 实 例 化 当 我 们 要 通 过 汽 车 类 来 创 建 一 个 轿 车 对 象 , 并使 用 它 的 刹 车 行 为 方 法 时 , 则 要 用 下 面 的 格 式进 行 实 例 化 : /实 例 化 汽 车 对 象 汽 车 轿 车 = new 汽 车 ( ) ; /引 用 汽 车 对 象 的 刹 车 方 法 轿 车 .刹 车 ( ) ; 3.2 类 与 对 象 类 和 对 象 是 Java的 核 心 和 本 质 。 它们 是 Java语 言 的 基 础 , 编 写 一 个Java程 序 , 在 某 种 程 度 上 来 说 就 是定 义 类 和 创 建 对 象 。 定 义 类 和 建 立

5、对 象 是 Java编 程 的 主 要 任 务 。 3.2.1 定 义 类 1、 类 的 一 般 形 式 类 由 类 声 明 和 类 体 组 成 , 而 类 体 又 由 成员 变 量 和 成 员 方 法 组 成 ( 如 图 3.3所 示 ) : 一 个 具 体 的 类 2、 类 声 明 类 声 明 由 四 部 分 组 成 : 类 修 饰 符 、 类 关键 字 class、 声 明 父 类 、 实 现 接 口 , 其 一般 形 式 如 下 : publicabstract|final class 类 名 extends 父 类 名 implements 接 口 列 表 各 组 成 部 分 的 具

6、 体 说 明 ( 1) 类 修 饰 符 public: 这 个 public关 键 字 声 明 了 类 可以 在 其 他 类 中 使 用 。 缺 省 时 , 该 类 只 能 被 同一 个 包 中 的 其 他 类 使 用 。 abstract: 声 明 这 个 类 为 抽 象 类 , 即 这个 类 不 能 被 实 例 化 。 final: 声 明 该 类 不 能 被 继 承 , 即 不 能 有子 类 。 也 就 是 说 , 不 能 用 它 通 过 扩 展 的 办 法来 创 建 新 类 。 ( 2) 类 的 关 键 字 class 在 类 声 明 中 , class是 声 明 类 的 关 键字 ,

7、 表 示 类 声 明 的 开 始 , 类 声 明 后 面 跟 着类 名 , 按 习 惯 类 名 要 用 大 写 字 母 开 头 , 并且 类 名 不 能 用 阿 拉 伯 数 字 开 头 。 给 类 名 命名 时 , 最 好 取 一 个 容 易 识 别 且 有 意 义 的 名字 , 避 免 A、 B、 C之 类 的 类 名 。 ( 3) 声 明 父 类 extends为 声 明 该 类 的 父 类 , 这 表 明 该 类是 其 父 类 的 子 类 。 一 个 子 类 可 以 从 它 的 父类 继 承 变 量 和 方 法 。 extends只 能 实 现 单 继承 。创 建 子 类 格 式 :cl

8、ass subclass extends 父 类 名 17 类 的 继 承 被 继 承 的 类 称 为 父 类 继 承 父 类 的 类 称 为 子 类 执 行 继 承 时 , 子 类 将 获 得 父 类 的 属 性 , 并 具有 自 身 特 有 的 属 性 。 Emoloyee类 : name sex Worker类 : category dressAllowanceOfficer类 : empClass vehicle工 人 类 , 继 承 了 父类 的 姓 名 和 性 别 属性 外 还 包 含 类 别 和是 否 有 服 装 津 贴 属 性 主 任 类 , 还 包 含级 别 和 是 否 配

9、备交 通 工 具 属 性 职 员 类 , 具有 姓 名 和 性别 两 个 属 性 (4) 实 现 接 口 在 类 声 明 中 使 用 关 键 字 implements实 现 接 口 ,当 要 实 现 有 多 个 接 口 时 , 各 接 口 名 以 逗 号 分隔 , 其 形 式 为 : implements 接 口 1, 接 口 2, , 接 口 是 一 种 特 殊 的 抽 象 类 , 这 种 抽 象 类 中 只包 含 常 量 和 方 法 的 定 义 , 而 没 有 变 量 和 方 法的 实 现 。 一 个 类 可 以 实 现 多 个 接 口 , 以 某 种程 度 实 现 “ 多 继 承 ” 。

10、 3、 成 员 变 量 和 局 部 变 量 成 员 变 量 ( 在 类 体 中 定 义 , 在 整个 类 中 都 有 效 ) ;局 部 变 量 ( 在 方 法 中 定 义 , 只 在本 方 法 中 有 效 ) 。 变 量 ( 1) 成 员 变 量 最 简 单 的 成 员 变 量 声 明 的 形 式 为 :类 型 成 员 变 量 名 ; ( 2) 局 部 变 量在 方 法 中 声 明 的 变 量 以 及 方 法 中 的 参 数 称 为 局部 变 量 。 ( 3) 如 果 局 部 变 量 名 与 成 员 变 量 名 相 同 , 则成 员 变 量 被 屏 蔽 。 成 员 变 量 与 局 部 变 量c

11、lass Data int x=12,y=5;public void sum() int s; s=x+y; x、 y是 成 员 变 量 ,类 中 所 有 方 法 都可 以 使 用 它 们s是 局 部 变 量 。仅 限 于 在 sum()方 法 内 部 使 用 。 如 果 局 部 变 量 名 与 成 员 变 量 名相 同 , 则 成 员 变 量 被 屏 蔽 。 class Data int x=12,y=5; public void sum() int x=3; /局 部 变 量 x屏 蔽 了 成 员 变 量 int s; s=x+y; 3.2.2 成 员 方 法 在 Java中 , 必 须

12、通 过 方 法 才 能 完 成对 类 和 对 象 的 属 性 操 作 。 成 员 方 法 只 能在 类 的 内 部 声 明 并 加 以 实 现 。 一 般 在 类体 中 声 明 成 员 变 量 之 后 再 声 明 方 法 。 1、 方 法 声 明 返 回 类 型 方 法 名 ( 形 式 参 数 ) 方 法 体 内 容 ( 1) 方 法 名 方 法 声 明 包 括 方 法 名 、 返 回 类 型 和参 数 。 ( 2) 方 法 体 方 法 体 是 一 对 大 括 号 “ ” 之间 的 内 容 。 【 例 3-1】 教 材 P59图 3.7 方 法 声 明 与 调 用的 运 行 结 果 方 法 重

13、 载 方 法 重 载 是 指 多 个 方 法 享 有 相 同 的 名 字 ,但 是 这 些 方 法 的 参 数 必 须 不 同 , 或 者 是参 数 的 个 数 不 同 , 或 者 是 参 数 类 型 不 同 。返 回 类 型 不 能 用 来 区 分 重 载 的 方 法 。 【 例 3-2】 教 材 P60图 3.8 重 载 与 调 用 关 系 【 构 造 方 法 】 构 造 方 法 是 一 个 特 殊 的 方 法 , 主 要用 于 初 始 化 新 创 建 的 对 象 。 构 造 方 法 的方 法 名 要 求 与 类 名 同 名 , 而 且 无 返 回 值( 但 不 能 加 void修 饰 符

14、 ) 。 而 且 , 构 造方 法 只 能 通 过 new运 算 符 调 用 , 用 户 不能 直 接 调 用 。 例 子 3-3(p61)使 用 缺 省 构 造 方 法 : 例 子 3-4(p62) 3.3 对 象类 是 一 个 抽 象 的 概 念 , 而 对 象 是 类 的具 体 化 。 类 通 过 实 例 化 生 成 对 象 。一 个 对 象 的 生 命 周 期 包 括 三 个 阶 段 : 创 建 、 使 用 和 释 放 。 1、 对 象 的 创 建 创 建 对 象 的 一 般 格 式 为 : 类 名 对 象 名 = new 类 名 (参 数 列 表 ); (1) 对 象 声 明 : 类

15、 名 对 象 名 ; (2) 实 例 化 : 对 象 名 = new 构 造 方 法 ( ); 2、 对 象 的 使 用 类 是 不 能 直 接 使 用 的 , 我 们 只 能类 实 例 化 后 的 对 象 。 而 对 象 的 使 用是 通 过 访 问 对 象 变 量 或 调 用 对 象 方法 。 通 过 运 算 符 “ .” 可 以 实 现 对 对象 的 变 量 访 问 和 方 法 的 调 用 。 ( 1) 访 问 对 象 的 变 量 访 问 格 式 : 对 象 名 .成 员 变 量 ; 例 如 , 设 有 一 个 A类 其 结 构 如 下 : class A int x; 对 变 量 x赋

16、 值 , 先 创 建 并 实 例 化 类 A的 对 象a, 然 后 再 通 过 对 象 给 变 量 x: A a = new A(); a.x=5; ( 2) 调 用 对 象 的 方 法 调 用 格 式 : 对 象 名 .方 法 名 (参 数 列 表 ); 【 例 3-5】 用 带 参 数 的 成 员 方 法 计 算 长 方体 的 体 积 。【 例 3-6】 用 对 象 作 为 方 法 的 参 数 计 算 圆 柱体 体 积 。 ( 3) 释 放 对 象 1、 java的 垃 圾 收 集 器 自 动 把 没 有 应 用 的 对 象 作 为 垃 圾 手 机 并 释 放 , 但 优 先 级 比 较低

17、 ;2、 可 使 用 系 统 的 System.gc();3、 可 使 用 finalize()方 法 清 除 对 象 this和 super关 键 字1.this的 使 用( 1) 访 问 当 前 对 象 的 数 据 成 员( 2) 访 问 当 前 对 象 的 成 员 变 量( 3) 重 载 时 用 来 引 用 同 类 的 其 他 构 造 方 法2.super的 使 用( 1) 访 问 直 接 基 类 中 被 隐 藏 的 数 据 成 员( 2) 调 用 直 接 基 类 中 被 重 写 的 成 员 方 法( 3) 调 用 直 接 基 类 的 构 造 方 法 第 3章 面 向 对 象 程 序 设

18、 计 基 础 例 子 【 3-2】 例 子 【 IntSum 】 方 法 参 数 接 收 3.4 面 向 对 象 特 性 java语 言 中 有 三 个 典 型 的 面 向 对 象 的 特性 : 封 装 性 、 继 承 性 和 多 态 性 。 面 向 对 象 的 基 本 特 征 : 封 装 定 义电 视 的内 部 结 构开 电 视关 电 视选 择 频 道调 节 声 音 , 色 彩 对 象 接 口 面 向 对 象 的 基 本 特 征 : 封 装 举 例“ 学 生 对 象 ” 的 内 部 数 据 :v个 人 基 本 信 息 ( 年 龄 、 身 高 、 家 庭 信 息 )v在 校 情 况 (专 业

19、, 班 级 , 宿 舍 , 任 职 等 )v选 修 课 表v成 绩 清 单 ( 考 试 , 课 程 设 计 , 毕 业 设 计 成 绩 )入 学 /注 册修 课 /考 试查 询 成 绩毕 业 答 辩 只 能 通 过 接 口来 操 作 对 象 ,不 能 随 意 修 改内 部 数 据 面 向 对 象 的 基 本 特 征 : 继 承家 电 类 ( 父 类 )数 据 : 功 率 品 牌 型 号方 法 : 启 动 , 停 止电 视 机 类 ( 子 类 )数 据 : 功 率 品 牌 型 号 尺 寸 方 法 : 启 动 , 停 止 选 频 道 调 色 彩 声 音 冰 箱 类 ( 子 类 )数 据 : 功 率

20、 品 牌 型 号 容 量 功 能 方 法 : 启 动 , 停 止 调 温 度 , 开 关 门 自 动 拥 有父 类 的 数据 , 方 法新 增 自 己 需 要 的 数据 和 方 法继 承 虚 框 : 该 类的 对 象 关 于 继 承 性【 例 3-7】 创 建 一 个 A类 和 它 的 子 类 B类 , 我们 通 过 子 类 B的 实 例 对 象 调 用 从 父 类 A继承 的 方 法 。【 例 子 3-8】 若 子 类 重 写 了 父 类 的 方 法 , 则系 统 运 行 时 调 用 子 类 的 方 法 ; 若 子 类 继承 了 父 类 的 方 法 ( 未 重 写 ) , 则 系 统 运行

21、时 调 用 父 类 的 方 法 。 面 向 对 象 的 基 本 特 征 : 多 态家 电 类 ( 父 类 )数 据 : 功 率 品 牌 型 号方 法 : 启 动 , 停 止电 视 机 类 ( 子 类 )数 据 : 功 率 品 牌 型 号 尺 寸 方 法 : 启 动 , 停 止 选 频 道 调 色 彩 声 音 冰 箱 类 ( 子 类 )数 据 : 功 率 品 牌 型 号 容 量 功 能 方 法 : 启 动 , 停 止 调 温 度 , 开 关 门启 动 电 视 :显 示 图 像 ,声 音 启 动 冰 箱 : 开 始 制 冷消 息 : 启 动继 承 面 向 对 象 的 基 本 特 征1.封 装 :

22、将 数 据 成 员 ( Data Member) 和属 于 此 数 据 的 操 作 方 法 ( Operating Method) , 放 在 同 一 个 实 体 ( Entity)或 对 象 中 。2.继 承 : 父 类 定 义 ( Define) 一 些 通 用 的属 性 与 行 为 , 其 子 类 继 续 使 用 。3.多 态 : 在 同 一 个 类 中 可 有 许 多 同 名 的 方法 , 但 其 参 数 数 量 与 数 据 类 型 不 同 , 而且 操 作 过 程 与 返 回 值 也 可 能 会 不 同 。( 1) 模 块 化 ( 2) 信 息 隐 藏 ( 1) 实 现 代 码 复

23、用 ( 2) 简 化 设 计 过 程 解 决 其 他 语 言 中不 能 重 名 的 问 题 修 饰 符 类 成 员 包 括 数 据 成 员 和 函 数 成 员 , 类 的 每 个 成 员 都 有 一个 称 为 可 访 问 性 的 属 性 , 用 来 保 护 类 成 员 。 Java有 四 种类 成 员 的 保 护 方 式 , 分 别 为 缺 省 的 、 public( 公 有 的 )、 protected( 保 护 的 ) 、 private( 私 有 的 ) 。 为 了 使 程 序 具 有 良 好 易 读 的 风 格 , 建 议 最 好 在 撰 写 类 代码 时 用 不 同 的 可 访 问

24、性 来 组 织 类 成 员 , 并 将 public成 员作 为 对 外 公 布 的 接 口 放 在 最 前 面 , 以 便 引 起 关 注 。 限访问修饰符关键字同一个类中同一个包中派生类中其他包中public protected 无 访 问 修 饰 符 关 键 字 private 修 饰 符stati c 类 变 量 和 方 法fi nal 常 量 、 终 类 和 方 法nati ve 方 法 体 可 用 其 他 语 言abstract 抽 象 类 和 方 法syncroni zed 线 程 互 斥 Stati c关 键 字 用 stati c修 饰 的 变 量 或 方 法 称 为 类 变

25、 量 或类 方 法 如 果 在 声 明 时 用 stati c修 饰 , 则 声 明 为 静态 变 量 和 静 态 方 法 。 在 调 用 静 态 方 法 时, 不 要 进 行 实 例 化 而 直 接 调 用 。 例 子 【 3-9】 Fi nal关 键 字 修 饰 成 员 变 量 : 常 量 修 饰 成 员 方 法 : 不 能 被 子 类 重 写 修 饰 类 : 不 能 成 为 超 类 类 成 员 和 实 例 成 员 带 有 static的 为 类 属 性 和 类 方 法 ; 不 带 static的 为 实 例 属 性 和 实 例 方 法 。 类 属 性 和 类 方 法class Anima

26、l int weight;String colour; static int count=0; Animal() +count;System.out.println(The total number of Animal is:+count); public void eat() System.out.println(Eating); public static void move() System.out.println(Animal can Moving); 类 属 性类 方 法 成 员 属 性成 员 方 法 类 属 性 和 类 方 法public class StaticTest1 pub

27、lic static void main( String args ) System.out.println(The total number of Animal is:+ Animal.count);Animal.move();Animal a1=new Animal();Animal a2=new Animal(); 运 行 结 果 为 :The total number of Animal is:0Animal can Moving The total number of Animal is:1The total number of Animal is:2 实 例 属 性 和 实 例 方

28、 法 与 类 属 性 和 类 方 法 相 比 较 , 实 例 属 性 和 实例 方 法 必 须 在 实 例 化 变 量 之 后 才 能 使 用 , 将 上 例 中 Animal.move()换 成 Animal.eat(), 结 果 如 何 ? 为 什 么 ? 抽 象 类 和 抽 象 方 法 定 义 目 的 是 提 供 可 由 其 子 类 共 享 的 一 般 形 式 。 抽 象 类 不 能 实 例 化 。 抽 象 方 法 没 有 函 数 体 。 抽 象 方 法 必 须 在 子 类 中 给 出 具 体 实 现 。 抽 象 类 中 可 以 没 有 抽 象 方 法 , 有 抽 象 方 法 的 类 一

29、定 是 抽 象 类 。 抽 象 类 必 须 继 承 , 子 类 根 据 自 身 需 要 扩 展 抽 象 类 。 abstract不 能 和 final叠 用 修 饰 类 。 不 能 有 private成 员 变 量 和 方 法 。 不 能 和 private、 static、 final叠 用 修 饰 方 法 。 抽 象 类 和 抽 象 方 法 动 物 有 Move方 法 , 动 物 包 括 鸟 类 和 鱼 类 鸟 类 的 Move应 该 是 : Flying 鱼 类 的 Move应 该 是 : Swimming 要 求 : 设 计 Fish类 的 程 序 设 计 人 员 一 定 要 覆 盖m

30、ove方 法 , 。 。 。 粗 心 大 意 的 程 序 设 计 人 员 往 往 会 忘 记 覆 盖 某 些特 定 的 方 法 , 造 成 程 序 运 行 上 的 错 误 。 Java中 提 供 了 一 个 特 殊 的 机 制 , 能 让 继 承 的 子类 一 定 要 覆 盖 某 个 特 殊 的 方 法 才 能 创 建 实 例 运行 , 这 种 机 制 就 是 抽 象 方 法 和 抽 象 类 。 覆 盖 的 含 义动 物 类数 据 : 颜 色方 法 : 运 动鱼 类数 据 : 颜 色方 法 : 运 动 ( 游 动 ) 鸟 类数 据 : 颜 色方 法 : 运 动 ( 飞 翔 )继 承 鸟 类 覆

31、 盖 了 动物 类 的“ 运 动 ”方 法鱼 类 覆 盖 了 动物 类 的 “ 运 动 ”方 法 抽 象 类 和 抽 象 方 法 抽 象 方 法 : abstract public void move(); 抽 象 类 ( 不 能 生 成 实 例 对 象 ) abstract class Animal abstract这 个 关 键 字 只 能 用 在 类 和 方 法 上 ,不 能 用 在 属 性 和 一 般 变 量 上 ( 不 包 括 常量 ) 。 直 接 以 分 号 “ ; ” 来 结束 , 不 用 加 上 左 右 大 括号 抽 象 类 举 例abstract class Animal /

32、抽 象 类int weight;String colour; public void eat() System.out.println(Eating); abstract public void move(); /定 义 抽 象 方 法class Bird extends Animal public void move() System.out.println(Flying); class Fish extends Animal public void move() System.out.println(Swimming ); public class StaticTest1public st

33、atic void main(String argv) Bird b1 = new Bird(); Fish f1 = new Fish(); b1.move(); f1.move(); 运 行 结 果 为 :Flying Swimming 可 用 Animal a=new Animal()来 定 义 实 例 吗 3.5 接 口 和 包 3.5.1 接 口 接 口 是 抽 象 类 的 一 种 , 只 包 含 常 量 和方 法 的 定 义 , 而 没 有 变 量 和 具 体 方 法 的实 现 。 1、 接 口 的 定 义 接 口 的 定 义 包 括 接 口 声 明 和 接 口 体 。接 口 定

34、义 的 格 式 如 下 :public interface 接 口 名 extends 父 接 口 名 /接 口 体 2、 接 口 的 实 现 在 类 的 声 明 中 用 implements子 句 来 表 示 一 个类 使 用 某 个 接 口 , 在 类 体 中 可 以 使 用 接 口 中定 义 的 常 量 , 而 且 必 须 实 现 接 口 中 定 义 的 所有 方 法 。 一 个 类 可 以 实 现 多 个 接 口 ,在 implements子句 中 用 逗 号 分 开 。 接 口 举 例 例 子 3-12例 子 3-13 3.5.2 包 package和 import语 句 Packa

35、ge 用 于 指 出 class文 件 路 径package class文 件 路 径 ;I mport 用 于 引 用 包 的 类 一 个 包 中 通 常 有 多 个 类 , 就 用 * 号 代替 Import语 句 import类 似 于 C中 的 include语 句 Import java.io.*; Import java.applet.*; 包 package 包 不 仅 是 命 名 空 间 机 制 , 也 是 访 问 控制 机 制 。 Java通 过 包 , 将 命 名 空 间 分隔 成 很 多 独 立 的 小 块 , 一 组 相 关 的 类和 接 口 存 放 在 一 个 独 立

36、 的 包 内 , 从 而和 其 它 包 中 的 类 或 接 口 区 分 开 。 包 的 使 用第 一 步 建 立 和 包 同 名 的 目 录 。 包 和文 件 系 统 目 录 一 一 对 应 , 有 一 个 包 , 就有 一 个 和 其 对 应 的 文 件 系 统 目 录 。 包 内的 所 有 类 或 接 口 都 必 须 在 与 包 同 名 的 目录 下 。 第 二 步 在 类 或 接 口 所 在 文 件 的 最 前面 声 明 类 或 接 口 所 在 的 包 。 包 的 声 明 格式 如 下 :package 包 名 1.包 名 2.包 名 n; 引 用 包通 过 import将 包 引 入

37、程 序 中 , 其 格 式如 下 :import 包 名 1. .包 名 n.类 名 ;或import 包 名 1. .包 名 n.*; Java自 动 引 入 的 包当 前 包 。缺 省 包 , 缺 省 包 是 无 名 包 。java.lang包 , Java基 本 的 语言 功 能 保 存 在 这 个 包 中 例 : 在 当 前 建 立 目 录 : abcxyz. Import abc.xyz.*; public class a public static void main(String args ) b b1=new b(); b1.print(); Package abc.xyz;p

38、ubli c class bpubli c voi d pri nt() System.out.pri ntln(package test); 把 b.java保 存 到abcxyz目 录 下 a.java保存 在 当 前目 录 3.5.3 压 缩 文 件 1、 将 类 压 缩 为 jar文 件 在 Java提 供 的 工 具 集 bin目 录 下 有 一 个 jar.exe文 件 , 它 可 以 把 多 个 类 的 字 节 码 文 件 打 包 压 缩成 一 个 jar文 件 , 然 后 将 这 个 jar文 件 存 放 到Java运 行 环 境 的 扩 展 框 架 中 , 即 将 该 jar

39、文 件 存放 在 JDK安 装 目 录 的 jrelibext下 , 这 样 , 其 他的 程 序 就 可 以 使 用 这 个 jar文 件 中 的 类 来 创 建 对象 了 。 例 : 设 有 Test1.class和 Test2.class, 我 们 要 将 它 们压 缩 成 一 个 jar文 件 Test.jar。 ( 1) 编 写 Manifest.mf清 单 文 件Mainfest Version:Main-Class: Test1 Test2( 注 意 Main-Class:与 后 面 的 类 名 之 间 要 有一 个 空 格 , 且 最 后 一 行 要 回 车 换 行 ) 。将

40、其 保 存 为 Manifest.mf。 ( 2) 生 成 jar文 件 jar cfm Test.jar Manifest.mf Test1.class Test2.class 其 中 参 数 c表 示 要 生 成 一 个 新 的 jar文 件 ,f表 示 要 生 成 的 jar文 件 的 文 件 名 , m表 示清 单 文 件 的 文 件 名 。 2、 将 应 用 程 序 压 缩 为 jar文 件 我 们 还 可 以 用 jar.exe将 应 用 程 序 生 成 可 执 行 文 件 。 在Windows环 境 下 , 我 们 可 用 鼠 标 双 击 该 文 件 , 就 可 以运 行 该 应 用 程 序 。 其 生 成 jar文 件 的 步 骤 与 前 面 生 成 类 的 jar文 件 相 同 。 当要 压 缩 多 个 类 时 , 我 们 在 清 单 文 件 中 只 要 写 出 主 类 的类 名 , 设 有 主 类 A.class, 则 : Mainfest Version: Main-Class: A 生 成 jar文 件 时 , 也 可 以 使 用 通 配 “ *.class”。 jar cfm Test.jar Manifest.mf *.class jar命 令 的 有 关 用 法 (jar.htm)更 加 详 细 的 参 考http:/ 本 章 结 束 !

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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