A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© @文瑞 中级黑马   /  2014-4-24 10:07  /  1765 人查看  /  16 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 @文瑞 于 2014-4-24 22:09 编辑

在Java基础学习中,编写了很多代码,虽然很基础,但是为了在日后方便查看,想定义一个API,就像jdk文档形式的,不知道该如何定义,请教前辈们,你们有没有弄过啊?

16 个回复

倒序浏览
尝试过用javadoc生成,但是那样的话生成的只是单个的类的文档,想知道如何把所有的都集中到一个API中
回复 使用道具 举报
为什么没有人肯帮帮忙呢?:'(
回复 使用道具 举报
  1. 在DOS下使用  //javadoc -d myhelp -author -version ArrayTool.java   
  2. ArrayTool.java 是表明要把哪个java文件生成文档, 一般都是工具类才要生成文档,工具类的方法上都要加上文档注释才能生成。
  3. 比如
  4. /**
  5. 这是一个可以对数组进行操作的工具类,该类中提供了,获取最值,排序等功能。
  6. @author JiangShanShan
  7. @version V1.0

  8. */
  9. public class ArrayTool {
  10.         /**
  11.         空参数构造函数。
  12.         */
  13.         private ArrayTool(){};//防止别人new对象
  14.         /**
  15.         获取一个整形数组中的最大值。
  16.         @param arr 接收一个int类型的数组。
  17.         @return 会返回一个该数组中最大值。
  18.         */
  19.         //获取最大值
  20.         public static int getMax(int arr []){//一定要加上static,对方通过类名调用该方法,在创建对象之前,所以必须得定义成静态的
  21.                 int maxIndex = 0;//定义变量,记录最大值的角标
  22.                 for(int x=0;x<arr.length;x++){//要想挨个比值,必须先循环遍历拿出数组里的值,所以先遍历后比较
  23.                         if(arr[x]>arr[maxIndex])
  24.                         maxIndex = x;
  25.                                                
  26.                 }               
  27.                 return arr[maxIndex];
  28.         }
  29.         /**
  30.         获取一个整形数组中的最小值。
  31.         @param arr 接收一个int类型的数组。
  32.         @return 会返回一个该数组中最小值。
  33.         */
  34.         //获取最小值
  35.         public static int getMin(int arr[]){
  36.                 int minIndex = 0;
  37.                 for(int x=0;x<arr.length;x++){
  38.                         if(arr[x]<arr[minIndex])
  39.                                 minIndex = x;
  40.                 }
  41.                 return arr[minIndex];
  42.         }
  43.        
  44.         /**
  45.         给int数组进行选择排序。
  46.         @param arr 接收一个int类型的数组。
  47.         */
  48.         //选择排序
  49.         public static void selectSort(int arr []){//给数组排序,没有返回值
  50.                 for(int x=0;x<arr.length-1;x++){
  51.                         for(int y=x+1;y<arr.length;y++){
  52.                                 if(arr[x]>arr[y])
  53.                                         changePosition(arr,x,y);
  54.                         }
  55.                        
  56.                 }
  57.                
  58.                
  59.                
  60.         }
复制代码

评分

参与人数 1技术分 +1 收起 理由
itpower + 1

查看全部评分

回复 使用道具 举报
本帖最后由 linweiwen 于 2014-4-24 22:07 编辑

楼主,或许你跟我以前想的一样,
一个java原文件里面,有很多个class,你想用javadoc工具,
把它们全都放到一个API文档里面?

你可以这样写:

javadoc -private -d ZhuShi ZhuShi.java

只要加上private,那么这个java文件里面的类,都会在生产的文档中显示出来。

——————————————————————————————————————————

再复杂一点的用法:
  • 三个java源文件:ZhuShi.java  、print.java 、 HelloWorld.java
  • 位于两个包: com.itheima1   、 com.itheima2
  • 其中一个java文件中含有三个类:   ZhuShi.java中,有ZhuShi、print1、print2三个类
  1. package com.itheima1;
  2. public class ZhuShi
  3. {
  4.         /**
  5.         * ZhuShi类的main方法
  6.         * @param args 传入的参数
  7.         * @return 返回空值
  8.         */
  9.         public static void main(String[] args){
  10.                         System.out.println("HelloWorld!");//单行注释
  11.         }
  12. }


  13. class print1
  14. {        /**
  15.         * print1类
  16.         * @param s 传入的参数
  17.         * @return 返回空值,打印
  18.         */
  19.         public void print(String s){
  20.                         System.out.println(s);//单行注释
  21.         }
  22. }


  23. class print2
  24. {        /**
  25.         * print2类
  26.         * @param s 传入的参数
  27.         * @return 返回空值,打印
  28.         */
  29.         public void print(String s){
  30.                         System.out.println(s);//单行注释
  31.         }
  32. }
复制代码
其它两个文件就不贴了,
用的命令行:

javadoc -private -d ZhuShi ZhuShi.java print.java HelloWorld.java

文档就会生成出这个样子,



评分

参与人数 1技术分 +1 收起 理由
czwanglei + 1

查看全部评分

回复 使用道具 举报 1 0
linweiwen 发表于 2014-4-24 21:51
楼主,或许你跟我以前想的一样,
一个java原文件里面,有很多个class,你想用javadoc工具,
把它们全都放到 ...

恩 , 恩,就是这样,我试试,谢谢!

点评

赞  发表于 2014-4-24 22:10
我又增加了包的使用,你再看一下吧。  发表于 2014-4-24 22:07
回复 使用道具 举报

这样是单个类的文档,不过同样谢谢!
回复 使用道具 举报
本帖最后由 元亨利贞 于 2014-4-24 23:13 编辑

有个jd2chm.exe工具,自动生成.chm文档我的这个blog 里面有讲解http://blog.csdn.net/yuanhenglizhen110/article/details/9245737
回复 使用道具 举报
元亨利贞 发表于 2014-4-24 23:12
有个jd2chm.exe工具,自动生成.chm文档我的这个blog 里面有讲解http://blog.csdn.net/yuanhenglizhen110/ar ...

谢谢,我看了,试试
回复 使用道具 举报
我也是来学习的,我也想知道
回复 使用道具 举报
  1. /*
  2.    文档注释
  3. */

  4. /**
  5. 此类是对数组进行取最值排序等操作的
  6. @author 张三  
  7. @version 1.0
  8. */
  9. public class ArrayOperate{
  10.         private ArrayOperate(){}//将构造函数私有化,否则提取中会默认有构造器和说明
  11.         /**
  12.         取int数组里面的最大值
  13.         @param arr 传入一个int数组
  14.         @return 返回一个int数值
  15.         */
  16.         public static int max(int[] arr){
  17.                 int max=arr[0];
  18.                 for(int i=0;i<arr.length;i++){
  19.                         if(arr[i]>max){
  20.                         max=arr[i];
  21.                         }
  22.                 }
  23.                 return max;
  24.         }
  25.         /**
  26.         取int数组里面的最小值
  27.         @param arr 传入一个int数组
  28.         @return 返回一个int数值
  29.         */
  30.         public static int min(int[] arr){
  31.                 int min=arr[0];
  32.                 for(int i=0;i<arr.length;i++){
  33.                         if(arr[i<min]){
  34.                         min=arr[i];
  35.                         }
  36.                 }
  37.                 return min;
  38.         }

  39.         /**
  40.         对传入的int数组里面进行冒泡排序
  41.         @param arr 传入一个int数组
  42.         */
  43.         public static void maoSort(int[] arr){//冒泡排序
  44.                 for(int i=0;i<arr.length-1;i++){
  45.                         for(int j=0;i<arr.length-1;i++){
  46.                         replace(arr,j,j+1);
  47.                         }
  48.                 }

  49.         }
  50.         /**
  51.         对传入的int数组里面进行选择排序
  52.         @param arr 传入一个int数组
  53.         */
  54.         public static void xuanzeSort(int[] arr){//选择排序
  55.                 for(int i=0;i<arr.length-1;i++){
  56.                         for(int j=i+1;j<arr.length;j++){
  57.                                 replace(arr,i,j);
  58.                         }
  59.                 }
  60.         }
  61.         //私有化方法无需注释,也无法注释
  62.         private static void replace(int[] arr,int a,int b){
  63.                 if(arr[a]>arr[b]){
  64.                         int t=arr[a];
  65.                         arr[a]=arr[b];
  66.                         arr[b]=t;
  67.                 }
  68.         }

  69. }
  70. /*
  71. 以上完成后 在命令中进提取
  72. 如E:\java 目录下  //创建目录,作者,版本
  73. E:\java>javadoc -d这个是dir的缩写意思是创建
  74. Mydoc这个是创建文件夹 -author这个是作者   
  75. -version这个是版本   ArrayOperate.java最后跟上你的java文件名.java

  76. E:\java>javadoc -d Mydoc -author -version ArrayOperata.java       
  77.                                                         
  78. */

  79. //提取成功后打开  index.html查看



复制代码
回复 使用道具 举报 1 0
好东西,要收藏啊!!!
回复 使用道具 举报

请问子啊eclipse中如何生成对应的API呢?
回复 使用道具 举报
linweiwen 发表于 2014-4-24 21:51
楼主,或许你跟我以前想的一样,
一个java原文件里面,有很多个class,你想用javadoc工具,
把它们全都放到 ...

总结的好,鼓掌
回复 使用道具 举报
linweiwen 发表于 2014-4-24 21:51
楼主,或许你跟我以前想的一样,
一个java原文件里面,有很多个class,你想用javadoc工具,
把它们全都放到 ...

那用eclipse怎么生成呢?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马