外观
01 Java概述
1671 字约 6 分钟
2024-09-02
Java 的开发工具
- javac:Java 编译器。将 Java 程序编译成字节码
- java:Java 解释器。执行已经转换为字节码的文件
- jdb:Java 调试器。调试 Java 程序
- javap:反编译。将类文件还原回方法和变量
- javadoc:文档生成器。创建 HTML 文件
Java 运行基础
JVM:Java 虚拟机
- JVM 是–跨平台性的基础。被包含在 JDK 中。
- 不同平台有各自对应的不同 JVM
- JVM 屏蔽了底层平台的区别。能做到 ”一次编译,到处运行”
JDK 全称:Java Development Kit(Java 开发工具包)
- JDK = JRE + Java 的开发工具(Java,Javac,Javadoc 等等)
- 给开发人员使用的,包含 JRE
JRE:Java Runtime Enviroment(Java 运行环境)
- JRE = JVM + Java SE 标准类库(Java 的核心类库)
- 运行一个 Java 程序的基本条件
Java 执行流程分析
.Java
文件(源文件) — javac(编译)—.class
文件(字节码文件) — java(运行)— 结果
编译
javac [选项] 源文件名.java //[] 中是可选项
- 通过编译器将 Java 源文件编译成 JVM 可识别的字节码文件。字节码文件是二进制格式的,其格式是统一的。在源文件目录下使用 Javac 编译工具对 Java 文件进行编译。
- 如果没有错误将没有提示,当前目录会对应其中每一个类生成对应名称的
.class
文件,即字节码文件,也是可执行的 Java 程序。
运行
java [选项] 程序名 [参数列表] //[] 中是可选项
- 有了可执行的 Java 程序(字节码文件)
- 通过运行工具
Java.exe
对字节码文件进行执行,本质是将.class
文件装载到 JVM 运行。
注意,修改后的 .Java 源文件需要重新编译
Java 开发注意事项和细节说明
源文件以
.java
为扩展名,源文件的基本组成部分是类(class)Java 应用程序的执行入口是
main()
方法。其有固定的书写格式:public static void main(string[]args){…}
Java 语言严格区分大小写。
Java 方法由一条条语句构成,每个语句都以
;
结束。大括号
{
}
是成对出现的,缺一不可。习惯先写{}
再写代码一个源文件中最多只有一个 public 类,其余类不限。
如果文件中包含 public 类,则文件名必须按该类命名。
也可以把 main 方法写在非 public 类中,然后运行指定非 public 类,这样入口方法是非 public 类的主方法。
在控制台按 tab 可以实现代码补齐。按方向键 ↑ 或 ↓ 可以调用历史代码。
Java 转义字符
\t
:一个制表位,实现对齐功能\n
:换行符\\
:一个\
\"
:一个"
\'
:一个'
\r
:一个回车(不是换行)\.
:一个小圆点.
\b
:退格键\u????
:一个具体的 Unicode 字符。其中 ??? 是 4 位 16 进制数\???
:一个具体的 Unicode 字符。其中 ??? 是 3 位 8 进制数
注释
注释:用于注解说明程序的文字。其提高了代码的可读性,是一个程序员必须要具有的良好编程习惯。将自己的思想通过注释先整理出来,再用代码去体现。
被注释的文字不会被 JVM 解释执行。
注释类型
单行注释:
//这是一条单行注释 JAVA
选中文字按
ctrl
+/
将选中文字变为单行注释多行注释:
/* 这 是一段 多行注释 */JAVA
多行注释中不允许多行注释嵌套。
文档注释:
/** *@auther Melody *@version 3.2.0 */JAVA
以下写法也同样合法:
/** 就是说咱可以每行开头不加星号的 */
文档注释
文档注释的注释内容可被 JDK 中的 Javadoc 工具解析,生成一套以 HTML 形式体现的说明文档。
抽取注释:
javadoc -d 生成目录 -author -.. 文档名.java
文档注释包含 标记 和紧随其后的 自由格式文本:
标记:
以
@
开始,如@since
下面列出了一些 通用注释:
@since 始于
:创建一个 始于 条目。其后文本可以是引入该特性的版本的任何描述@author 作者
:产生一个 作者 条目。可以使用多个@author
标记@version 版本
:产生一个 版本 条目。这里的文本可以是对当前版本的任意描述@link 超链接
:产生一个 超链接,链接到 javadoc 相关部分或外部文档@see 引用
:在 see also 部分增加一个超链接。可以添加多个@see
标记,但必须放在一起。这里的 引用 有以下选择:
/** *@see com.test.Example#act() *@see <a herf="../../../../../../">Melody's Box</a> *@see "一段文本" */
- 只提供类、方法或变量的名字。那个场合,使用 # 来分隔类名和方法名
@see
后有一个 < 字符的场合,需要指定超链接。可以指向任何 URL@see
后有一个 “ 字符的场合,文本会显示在 see alse 部分
自由格式文本:
第一句应该是一个概要性的句子。javadoc 会自动抽取这些语句生成概要页
自由格式文本中,可以使用 HTML 修饰符
注释的插入
javadoc 工具抽取文档注释时,会从以下位置抽取:
模块
包(包注释)
要想产生包注释,必须在每个包目录中添加一个单独的文件
有 2 种方法:
- 提供一个名为 package-info.java 的文件。其中 只能 包含文档注释,以及后面的一个 package 语句。不能包含更多的代码或注释。
- 提供一个名为 package.html 的 HTML 文件。此时会抽取
<body>...</body>
间的所有文本
公共类和接口(类注释)
类注释必须放在 import 语句后,类定义之前
公共的和受保护的字段
只需要对公共字段(通常是静态常量)建立文档
公共的和受保护的构造器和方法
方法注释必须放在所描述的方法之前。除了通用标记外,还能使用如下标记:
@param 变量描述
:该标记能给当前方法的 参数 部分添加一个条目。该描述可以占据多行。一个方法的所有
@param
标记必须放在一起@return 返回值描述
:该标记能给当前方法的 返回值 部分添加一个条目。该描述可以占据多行。@throws 异常描述
:该标记能给当前方法的可能抛出的 异常 添加一个条目。