⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 yyrm2.html

📁 关于java学习的一些基本知识!
💻 HTML
📖 第 1 页 / 共 2 页
字号:
          <TD bgColor=#f0f0f0 borderColor=#ffffff class=t1 noWrap 
            width="50%"><IMG height=12 src="yyrm2.files/blue_dot.gif" 
            width=12>作者:袁小春 </TD>
        <TR>
        <TR>
          <TD bgColor=#f0f0f0 borderColor=#ffffff class=t colSpan=2 
width="100%">
            <H1 align=center>第 二 章 Java程 序 开 发 与 运 行 环 境 </H1>
            <H2 align=center>2.1 JDK环 境 </H2>
            <P>Java不 仅 提?copy;了 一 个 丰 富 的 语 言 和 运 行 环 境, 而 且 还提?copy;了 一 个 免 费 
            的Java开 发 工 具 集(Java Developers Kits, 简称JDK)。 编 程 人 员 和 最 终 用 户 可 以 利 
            用 这?copy;工 具 来 开 发java程序 或 调 用Java 内 容。JDK包 括 以 下 工 具: javac Java语 言 
            编 译 器,输 出 结 果 为Java字 节 码 java Java字 节 码 解 释 器 javap Disassembeler: 
            Java字 节 码 分 解 程 序, 本 程 序 返 回Java程 序 的 成 员 变 量 及 方法 等 信 息。 javaprof 资 
            源 分 析 工 具, 用 于 分 析Java程 序 在 运 行过 程 中 调 用 了 哪?copy;资 源, 包 括 类 和 方 法 的 
            调 用 次 数 和时 间, 以 及 各 数 据 类 型 的 内 存 使 用 情 况 等。 javah C代 码 处理 工 具, 用 于 
            从Java类 调 用C++代 码 java Applet Viewer 小 应 用 程序 浏 览 工 具, 用 于 测 试 并 运 
            行Java小 应 用 程 序 java Debugger API Java调 试 工 具API Prototype Debugger 
            Java调 试 工 具 原 型 </P>
            <P>Java开 发 环 境 还 包 括Java类 库(包 括I/O类 库、 用 户 界 面 类 库、网 络 类 库 
            等)和HotJava WWW 浏 览 器。 其 中,HotJava浏 览 器 提?copy;了在WWW环 境 下 运 行Java代 码 
            的 一 个 运 行 系 统, 而 且 还 为WWW开 发人 员 提?copy;了 一 个Java开 发 框 架。Java解 释 器 是 
            面 向 Java程 序的 一 个 独 立 运 行 系 统, 它 可 以 一 种 稳 定、 高 性 能 方 式 运 行那?copy;独 立 
            于 平 台 的Java字 节 码,Java编 译 器 则 用 于 生 成 这?copy;字节 码。 </P>
            <H3 align=center>2.1.1 Java程 序 的 编 译 </H3>
            <P>Java程 序 的 编 译 程 序 是javac.exe。javac命 令 将Java程 序 编 译 成字 节 码, 然 后 你 
            可 用java解 释 器java命 令 来 解 释 执 行 这?copy;Java字节 码。Java程 序 源 码 必 须 存 放 在 
            后 缀 为.java的 文 件 里。Java 程序 里 的 每 一 个 类,javac都 将 生 成 与 类 相 同 名 称 但 后 缀 
            为.class文件。 编 译 器 把.class文 件 放 在.java文 件 的 同 一 个 目 录 里, 除 非你 用 了-d选 
            项。 当 你 引 用 到 某?copy;自 己 定 义 的 类 时, 必 须指 明 它 们 的 存 放 目 录, 这 就 需 要 利 用 
            环 境 变 量 参 数 CLASSPATH。环 境 变 量CLASSPATH是 由 一?copy;被 分 号 隔 开 的 路 径 名 组 
            成。 如果 传 递 给javac编 译 器 的 源 文 件 里 引 用 到 的 类 定 义 在 本 文 件和 传 递 的 其 它 文 件 
            中 找 不 到, 则 编 译 器 会 按 CLASSPATH定 义的 路 径 来 搜 索。 例 如: </P>
            <P>CLASSPATH = .;C:\java\classes 则 编 译 器 先 搜 索 当 前 目 录, 如果 没 搜 索 到, 
            则 继 续 搜 索C:\java\classes目 录。 注 意, 系 统 总是 将 系 统 类 的 目 录 缺 省 地 加 
            在CLASSPATH后 面, 除 非 你 用 -classpath选项 来 编 译。 javac_g 是 一 个 用 于 调 试 的 未 
            优 化 的 编 译 器, 功能 与 用 法 和javac一 样。 javac的 用 法 如 下: </P>
            <P>javac [-g][-O][-debug][-depend][-nowarn][-verbose][-classpath 
            path][-nowrite][-d dir] file.java... </P>
            <P>以 下 是 每 个 选 项 的 解 释。 </P>
            <P>选 项 解 释: </P>
            <P>-classpath path 定 义javac搜 索 类 的 路 径。 它 将 覆 盖 缺 省 的CLASSPATH环境 变 量 
            的 设 置。 路 径 是 由 一?copy;由 逗 号 隔 开 的 路 径 名 组成, 一 般 格 式 如 下: 
            .;&lt;your_path&gt; 例 如: .;C:\java\doc\classes;C:\tools\java\classes 
            表 示 编 译 器 遇 到 一 个 新 类, 它 先 在 本 文 件 中 查 找 它 的 定义, 如 果 没 有, 则 在 本 文 件 
            所 处 目 录 下 其 它 文 件 中 查 找 它的 定 义, 如 果 还 没 有, 则 继 续 搜 
            索C:\java\doc\classes目 录 中 的所 有 文 件, 以 此 类 推。 </P>
            <P>-d directory 指 明 类 层 次 的 根 目 录, 格 式 如 下: </P>
            <P>javac -d &lt;my_dir&gt; MyProgram.java </P>
            <P>这 样 将MyProgram.java程 序 里 的 生 产 的.class文 件 存 放 在my_dir目录 里. </P>
            <P>-g 带 调 试 信 息 编 译, 调 试 信 息 包 括 行 号 与 使 用java调 试工 具 时 用 到 的 局 部 变 量 
            信 息。 如 果 编 译 没 有 加 上-O优 化 选项, 只 包 含 行 号 信 息。 </P>
            <P>-nowarn 关 闭 警 告 信 息, 编 译 器 将 不 显 示 任 何 警 告 信 息。 </P>
            <P>-O 优 化 编 译static,final,private函 数, 注 意 你 的 类 文 件 可能 更 大。 </P>
            <P>-verbose </P>
            <P>让 编 译 器 与 解 释 器 显 示 被 编 译 的 源 文 件 名 和 被 加 载 的类 名。 </P>
            <P>环 境 变 量 </P>
            <P>CLASSPATH 用 来 提?copy;给 系 统 搜 索 用 户 定 义 的 类 的 缺 省 路径。 各 路 径 由 分 号 
            隔 开, 例 如: </P>
            <P>.;C:\java\doc\classes;C:\tools\java\classes 表 示 编 译 器 遇 到 一个 新 类, 
            它 先 在 本 文 件 中 查 找 它 的 定 义, 如 果 没 有, 则 在本 文 件 所 处 目 录 下 其 它 文 件 ?查 找 
            它 的 定 义, 如 果 还 没有, 则 继 续 搜 索C:\java\doc\classes目 录 中 的 所 有 文 件, 以 此 
            类推。 </P>
            <H3 align=center>2.1.2 Java程 序 的 调 试 使 用java调 试 器 </H3>
            <P>jdb导 游 </P>
            <P>在 早 期 前Betal版 的Java调 试 器jdb是 命 令 行 形 式 的, 如 用Sun公司 的dbx调 试 器。 
            用jdb来 调 试Java应 用 程 序, 在 调 试?reg;前, 要确 证 你 的 应 用 程 序 是 带 标 志 -g编 译 的。 
            例 如: javac -g HelloWorld.java </P>
            <P>help命 令 将 显 示jdb 里 的 可 用 命 令 列 表。 </P>
            <P>&gt;help &lt;命 令 列 表&gt; threads [threadgroup]--列 出 线 程 thread 
            &lt;thread id&gt;- - 设 置 缺 省 线 程 Suspend [threads id(s)]- - 将线 程 挂 起 
            resume [thread id(s)]- - 重 新 启 动 线 程 where [id] |a1|-- 打 印 线 程 的 堆 栈 
            threadgroups--列 出 线 程 组 号 threadgroup &lt;name&gt;-- 设 置 当 前 线 程 组 
            print &lt;id&gt; [id(s)]- - 打 印 对 象 或 域 dump &lt;id&gt; [id(s)]- - 打 
            印 所 有 对 象 信 息 locals- - 打 印当 前 堆 栈 所 有 局 部 变 量 classes- - 列 出 当 前 所 
            知 的 类 methods &lt;class id&gt;- - 列 出 一 个 类 的 成 员 函 数 stop in 
            &lt;classid&gt;.&lt;method&gt;-- 在 一 个 成 员 函 数 里 设 置 断 点 stop at 
            &lt;class.id&gt;:&lt;line&gt;-- 在 一 行 里 设 置 断 点 up [n frames]- - 在 线 
            程 堆 栈 里 往 上 移 down [n frames]- - 在 线 程 堆 栈 里 往 下 移 clear &lt;class 
            id&gt;:&lt;line&gt;-- 清 除 一 个 断 点 step - - 执 行 当 前 行 cont- - 从 断 点 处 
            继续 执 行 catch &lt;class.id&gt;- - 为 指 定 的 情 况 中 断 ignor 
            &lt;class.id&gt;-- 为 指 定 的 情 况 忽 略 list [line number]- - 打 印 源 程 序 
            use [Sourcefile path]- - 显 示 或 改 变 源 路 径 memeory- - 报 告 内 存 使 用 情 况 
            load classname- - 加 载Java类 以 便 调 试 run &lt;args&gt;- - 开 始执 行 加 载 的 
            类 !!- - 重 复 以 上 的 命 令 help(?)- - 列 出 所 有的 命 令 exit( or quit)- - 离 开 
            调 试 器 </P>
            <H3 align=center>2.1.3 Java程 序 的 执 行</H3>
            <P>java - java语 言 解 释 器 java命 令 解 释java 字 节 码 </P>
            <P>语 法: java [ options ] classname &lt;args&gt; java_g [ options ] 
            classname &lt;args&gt; </P>
            <P>描 述: java命 令 由java编 译 器javac输 出 的Java字 节 码。 </P>
            <P>classname参 数 是 要 执 行 的 类 名 称。 注 意 任 意 在 类 名 称 后的 参 数 都 将 传 递 给 要 
            执 行 类 的main 函 数。 </P>
            <P>java执 行 完main函 数 后 推 出, 除 非main函 数 创 建 了 一 个 或 多个 线 程。 如 果main函 数 
            创 建 了 其 它 线 程,java总 是 等 到 最 后 一个 线 程 推 出 才 推 出。 </P>
            <P>选 项: </P>
            <P>-cs, -checksource 当 一 个 编 译 过 的 类 调 入 时, 这 个 选 项 将比 较 字 节 码 更 改 时 
            间 与 源 文 件 更 改 时 间, 如 果 源 文 件 更改 时 间 靠 后, 则 重 新 编 译 此 类 并 调 入 此 新 类。 
            </P>
            <P>-classpath path 定 义javac搜 索 类 的 路 径。 它 将 覆 盖 缺 省 的CLASSPATH环境 变 量 
            的 设 置。 路 径 是 由 一?copy;由 逗 号 隔 开 的 路 径 名 组成, 一 般 格 式 如 下: 
            .;&lt;your_path&gt; 例 如: .;C:\java\doc\classes;C:\tools\java\classes 
            表 示 解 释 器 遇 到 一 个 新 类, 它 先 在 本 文 件 中 查 找 它 的 定义, 如 果 没 有, 则 在 本 文 件 
            所 处 目 录 下 其 它 文 件 中 查 找 它的 定 义, 如 果 还 没 有, 则 继 续 搜 
            索C:\java\doc\classes目 录 中 的所 有 文 件, 以 此 类 推。 </P>
            <P>-mx x 设 置 最 大 内 存 分 配 池, 大 小 为x,x必 须 大 于1000bytes。缺 省 为16兆。 </P>
            <P>-ms x 设 置 垃 圾 回 收 堆 的 大 小 为x,x必 须 大 于1000bytes。 缺省 为1兆。 </P>
            <P>-noasyncgc 关 闭 异 步 垃 圾 回 收 功 能。 此 选 项 打 开 后, 除 非显 式 调 用 或 程 序 内 存 
            溢 出, 垃 圾 内 存 都 不 回 收。 本 选 项 不打 开 时, 垃 圾 回 收 线 程 与 其 它 线 程 异 步 同 时 执 
            行。 </P>
            <P>-ss x 每 个Java线 程 有 两 个 堆 栈, 一 个 是java代 码 堆 栈, 一 个是C代 码 堆 栈。-ss选 项 
            将 线 程 理C代 码 用 的 堆 栈 设 置 成 最 大 为x。 </P>
            <P>-oss x 每 个Java线 程 有 两 个 堆 栈, 一 个 是java代 码 堆 栈, 一个 是C代 码 堆 栈。-oss选 
            项 将 线 程 理java代 码 用 的 堆 栈 设 置 成最 大 为x。 </P>
            <P>-v, -verbose 让java解 释 器 在 每 一 个 类 被 调 入 时, 在 标 准 输出 打 印 相 应 信 息。 
            </P>
            <P>环 境 变 量 </P>
            <P>CLASSPATH 用 来 提?copy;给 系 统 搜 索 用 户 定 义 的 类 的 缺 省 路径。 各 路 径 由 分 号 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -