黑马程序员技术交流社区
标题: Jar包和生成帮助文档(javadoc)配合使用,你也是高手 [打印本页]
作者: 孙万利 时间: 2012-11-27 23:34
标题: Jar包和生成帮助文档(javadoc)配合使用,你也是高手
本帖最后由 孙万利 于 2012-11-27 23:40 编辑
java开发中每个类都要import若干的jar包;
java开发中总会遇到自己记不清的,忘记的类,方法;
每当这个时候我就想,如果自己把编写好的方法打成jar包,再编写一个API,
给其他的开发人员使用,那多牛啊;
今天,我的愿望实现了;
因为我学习到了jar包如何打,java帮助文档如何写。希望也能帮到你(看下面代码)
Jar命令(打jar包)
选项包括:
-c 创建新的归档文件
-t 列出归档目录
-x 解压缩已归档的指定(或所有)文件
-u 更新现有的归档文件
-v 在标准输出中生成详细输出
-f 指定归档文件名
-m 包含指定清单文件中的清单信息
-e 为捆绑到可执行 jar 文件的独立应用程序
指定应用程序入口点
-0 仅存储;不使用任何 ZIP 压缩
-M 不创建条目的清单文件
-i 为指定的 jar 文件生成索引信息
-C 更改为指定的目录并包含其中的文件
如果有任何目录文件,则对其进行递归处理。
清单文件名、归档文件名和入口点名的指定顺序
与 "m"、"f" 和 "e" 标志的指定顺序相同。
示例 1:将两个类文件归档到一个名为 classes.jar 的归
jar cvf classes.jar Foo.class Bar.class
示例 2:使用现有的清单文件 "mymanifest" 并
将 foo/ 目录中的所有文件归档到 "classes.
jar cvfm classes.jar mymanifest -C foo/ .
jar包就是被打入jar包内文件的父目录
例如:jar cvf classes.jar Foo.class Bar.class
那么:classes.jar 就是Foo.class 和 Bar.class 的父目录
Foo.class 和 Bar.class文件可以删除,只要classes.jar文件存在即可
帮助文档制作
开始制作程序的说明书。java的帮助文档(说明书)通过文档注释来完成
*/
要生成帮助文档,类必须是public 修饰
生成帮助文档使用到bin目录下javadoc编译
格式: javadoc -d 目录名(c: d: ...) 文件夹名(如果没有会自动生成) -author -version java文件
以此为例在默认目录下生成帮助文档: javadoc -d(如果不写默认为当前目录) helpdoc -author -version ArrayTool.java
在c盘下生成帮助文档 javadoc -d c:\helpdoc -author -version ArrayTool.java
要想出现空的构造函数在帮助文档里,就要把修饰符变成public
以后只要把帮助文档和编译生成.class文件发给使用方,即可使用
有了jar包,只要把jar包和帮助文档发给使用方,就OK了
/**
文档注释
这是一个可以对数组进行操作的工具类,该类中提供了了,获取最值,排序等功能
@author 孙万利
@version v1.1
*/
public class ArrayTool{
/**
空参数构造函数
*/
private ArrayTool(){} //构造函数私有化,不能被new建立对象,本类静态,再建立对象,浪费堆内存
//求最大值函数
/**
获取一个整形数组中的最大值
@param arr 接受一个int型数组
@return 会返回一个该数组中最大值
*/
public static int getMax(int[] arr){
int max=0;
for(int x=1;x<arr.length;x++){
if(arr[x]>arr[max])
max=x;
}
return arr[max];
}
//求最小值函数
/**
获取一个整形数组中的最小值
@param arr 接受一个int型数组
@return 会返回一个该数组中最小值
*/
public static int getMin(int[] arr){
int min=0;
for(int x=1;x<arr.length;x++){
if(arr[x]<arr[min])
min=x;
}
return arr[min];
}
//查找排序
/**
给int型数组进行查找排序
@param arr 接收一个int型数组
*/
public static void SearchSort(int[] arr){
for(int x=0;x<arr.length-1;x++){
for(int y=x+1;y<arr.length;y++){
if(arr[x]>arr[y]){
swap(arr,x,y);
}
}
}
}
//冒泡排序
/**
给int型数组进行冒泡排序
@param arr 接收一个int型数组
*/
public static void BubbleSort(int[] arr){
for(int x=0;x<arr.length-1;x++){
for(int y=0;y<arr.length-x-1;y++){
if(arr[y]>arr[y+1]){
swap(arr,y,y+1);
}
}
}
}
//对排序中的重复代码(比较部分)进行封装
// 只对本类中排序方法使用,不对外提供,进行private 私有化
/**
给数组中元素进行位置的置换
@param arr 接收一个int型数组
@param a 要置换的位置
@param b 要置换的位置
*/
private static void swap(int[] arr,int a,int b){
int temp =arr[a];
arr[a]=arr;
arr=temp;
}
//封装一个对数组进行遍历的方法
/**
用于打印数组中的元素,打印形式是【element1,element2.......】
*/
public static void PrintArray(int [] arr){
System.out.print("[");
for(int x=0;x<arr.length;x++){
if(x!=arr.length-1){
System.out.print(arr[x]+" ,");
}else{
System.out.println(arr[x]+"]");
}
}
}
-
javadoc1.gif
(711.76 KB, 下载次数: 21)
-
javadoc2.gif
(1.19 MB, 下载次数: 25)
-
javadoc3.jpg
(80.33 KB, 下载次数: 15)
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |