二十一、Java工具类的创建
二十二、Jar包制作及使用
这一篇开始学习如何生成帮助文档。为什么要学习生成帮助文档
?
1、工具类已经制作好了,Java工具类的创建的类是一个.java文件
,编译后成.class文件
看不懂,所以需要对应的帮助文档,方便调用者快速了解一个类,相当于类的说明书
总结的说帮助文档就是类的说明书,学习Java的过程就是学习类的过程。
2、生成过程需要用到文档注释,其中可以通过一些注解,表示不同的内容,注解就是文档中出现的内容的解释
(1) 作者: @author 暴书源
(2) 版本: @version 1.0
(3) 参数: @param 用来对参数进行说明
(4) 返回值: @return 后面放返回值的说明
3、标注完成之后,进行帮助文档的生成
package com.test;
/**
* @author 暴书源世界上最帅的程序员之一
* @version 1.0
* ArrayTool提供了一些数组操作的相关方法,包含了获取最大值、最小值、遍历、反转等功能
*/
public class ArrayTool {
private ArrayTool() {
}
/**
* 用来获取最大值的方法:getMax
* @param arr 表示需要传递一个数组,其中arr不能为null
* @return 返回值就是最大值
*/
public static int getMax(int[] arr) {
int max = arr[0];
for (int i = 1; i < arr.length; i++) {
if (max < arr[i]) {
max = arr[i];
}
}
return max;
}
/**
* 用来获取最小值的方法:getMin
* @param arr 表示需要传递一个数组,其中arr不能为null
* @return 返回值就是最小值
*/
public static int getMin(int[] arr) {
int min = arr[0];
for (int i = 1; i < arr.length; i++) {
if (min > arr[i]) {
min = arr[i];
}
}
return min;
}
// 数组的两个元素交换
/**
* 数组元素交换的方法:swap
* @param arr 表示要交换的数组,arr不能为null
* @param i 表示要交换数组的元素的索引
* @param j 表示要交换数组的元素的索引
*/
public static void swap(int[] arr,int i,int j){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
// 数组的遍历
/**
* 打印数组中的每一个元素的方法:print
* @param arr 表示要打印的数组,arr不能为null
*/
public static void print(int[] arr){
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
// 数组的反转
/**
* 可以将数组元素反转的方法:reverse
* @param arr 表示要反转的数组,arr不能为null
*/
public static void reverse(int[] arr){
for(int i = 0,j = arr.length-1; i < j; i++,j--){
swap(arr,i,j);
}
}
}
怎么生成帮助文档?
JDK提供了官方的CMD
生成命令 javadoc
下面是官方给的,很长先别管我带大家做一下
用法: javadoc [options] [packagenames] [sourcefiles] [@files]
-overview <file> 从 HTML 文件读取概览文档
-public 仅显示 public 类和成员
-protected 显示 protected/public 类和成员 (默认值)
-package 显示 package/protected/public 类和成员
-private 显示所有类和成员
-help 显示命令行选项并退出
-doclet <class> 通过替代 doclet 生成输出
-docletpath <path> 指定查找 doclet 类文件的位置
-sourcepath <pathlist> 指定查找源文件的位置
-classpath <pathlist> 指定查找用户类文件的位置
-cp <pathlist> 指定查找用户类文件的位置
-exclude <pkglist> 指定要排除的程序包列表
-subpackages <subpkglist> 指定要递归加载的子程序包
-breakiterator 计算带有 BreakIterator 的第一个语句
-bootclasspath <pathlist> 覆盖由引导类加载器所加载的
类文件的位置
-source <release> 提供与指定发行版的源兼容性
-extdirs <dirlist> 覆盖所安装扩展的位置
-verbose 输出有关 Javadoc 正在执行的操作的信息
-locale <name> 要使用的区域设置, 例如 en_US 或 en_US_WIN
-encoding <name> 源文件编码名称
-quiet 不显示状态消息
-J<flag> 直接将 <flag> 传递到运行时系统
-X 输出非标准选项的提要
通过标准 doclet 提供:
-d <directory> 输出文件的目标目录
-use 创建类和程序包用法页面
-version 包含 @version 段
-author 包含 @author 段
-docfilessubdirs 递归复制文档文件子目录
-splitindex 将索引分为每个字母对应一个文件
-windowtitle <text> 文档的浏览器窗口标题
-doctitle <html-code> 包含概览页面的标题
-header <html-code> 包含每个页面的页眉文本
-footer <html-code> 包含每个页面的页脚文本
-top <html-code> 包含每个页面的顶部文本
-bottom <html-code> 包含每个页面的底部文本
-link <url> 创建指向位于 <url> 的 javadoc 输出的链接
-linkoffline <url> <url2> 利用位于 <url2> 的程序包列表链接至位于 <url> 的文档
-excludedocfilessubdir <name1>:.. 排除具有给定名称的所有文档文件子目录。
-group <name> <p1>:<p2>.. 在概览页面中, 将指定的程序包分组
-nocomment 不生成说明和标记, 只生成声明。
-nodeprecated 不包含 @deprecated 信息
-noqualifier <name1>:<name2>:... 输出中不包括指定限定符的列表。
-nosince 不包含 @since 信息
-notimestamp 不包含隐藏时间戳
-nodeprecatedlist 不生成已过时的列表
-notree 不生成类分层结构
-noindex 不生成索引
-nohelp 不生成帮助链接
-nonavbar 不生成导航栏
-serialwarn 生成有关 @serial 标记的警告
-tag <name>:<locations>:<header> 指定单个参数定制标记
-taglet 要注册的 Taglet 的全限定名称
-tagletpath Taglet 的路径
-charset <charset> 用于跨平台查看生成的文档的字符集。
-helpfile <file> 包含帮助链接所链接到的文件
-linksource 以 HTML 格式生成源文件
-sourcetab <tab length> 指定源中每个制表符占据的空格数
-keywords 使程序包, 类和成员信息附带 HTML 元标记
-stylesheetfile <path> 用于更改生成文档的样式的文件
-docencoding <name> 指定输出的字符编码
找到自己的java文件所在位置
上图cmd回车之后显示如下页面
回车后
总结
:
D:\namespace\Demo01\src\main\java>javajavadoc
-d D:\namespace\Demo01\src\main\java
-encoding UTF-8
-charset UTF-8
-windowtitle "帮助文档" ArrayTool.java
-d
后面的参数是帮助文档的生成位置-encoding
后面的参数UTF-8是编码,如果不加上这个会导致无法识别中文-charset
用来设定字符集的编码-windowtitile
用来设置标题
最后看一下我们刚刚生成的DOC(java说明书)
这里还有方法的详细资料
是通过这些命令给的的详细资料
(1) 作者: @author 暴书源
(2) 版本: @version 1.0
(3) 参数: @param 用来对参数进行说明
(4) 返回值: @return 后面放返回值的说明
学会了给点个赞 ,谢谢