java中如何自动生成注释

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中如何自动生成注释相关的知识,希望对你有一定的参考价值。

我用的NetBeans IDE 6.0.1
毕业设计要求做一个画图程序
我在网上找到了程序,但是不会放进他的项目里面
放到项目里面才能自动生成注释。
我的QQ460669122 需要程序的可以M我
程序4个文件。。。
解决者满分奉上。在线等

你说的应该是生成javadoc吧?

最简单方式就是使用命令行, cd到你的项目源代码目录下, 输入如下指令:

javadoc -d docs -subpackages com.yourpackage

其中-d docs指定了生成的javadoc在相对目录docs下, -subpackages com.yourpackage指定了你要被生成javadoc的源代码包.


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>              指定输出的字符编码

参考技术A

注释都是自己写的,自动生成的不好。

    输入 /* 

    Alt + / 自动补全就可

    填写注释内容

参考技术B 使用java是无法自动生成注释的。最多生成注释的空壳。例如在eclipse可以用alt-shift-j,生成一个空的注释框架。 具体的内容还是需要开发者自己来实现的。现在代码还没有灵活到通过看你的代码了解你要做什么。
另外一种生成注释的方法则是反过来,自动生成代码的同时自动生成注释。一般使用伪代码工具来编写,然后在生成代码的同时生成java。这样的工具不多。而且往往有很大的局限。往往属于公司内部使用的工具。
参考技术C 你在工程里新建一个文件把代码粘进去不就有注释了。

文件考到src/java/...文件夹里就可以在netbeans中看到了,但是不会自动加注释。
参考技术D 作为一名程序员 不仅要有一个写代码的能力,养成一个良好的编写习惯也是很重要的。今天给大家详细介绍一下如何创建注释模板,给每个类和方法都自己手动去注释信息也可以,只是这样比较繁琐。为何我们不手动去创建一个注释模板呢?
第一: 首先我们需要编写一个模板的xml文件(codetemplates.xml)
第二、我们现在就给xml文件编写主要注释的内容信息,我就直接把自己用的xml信息直接贴出来
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<templates>
<template autoinsert="false" context="overridecomment_context" deleted="false" description="Comment for overriding methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name="overridecomment">
/**
* @描述:
* @方法名: $enclosing_method
* $tags
* @创建人:$user
* @创建时间:$date$time
* @修改人:$user
* @修改时间:$date$time
* @修改备注:
* @throws
*/
</template>
<template autoinsert="false" context="methodcomment_context" deleted="false" description="Comment for non-overriding methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name="methodcomment">
/**
* @描述:
* @方法名: $enclosing_method
* $tags
* @返回类型 $return_type
* @创建人 $user
* @创建时间 $date$time
* @修改人 $user
* @修改时间 $date$time
* @修改备注
* @since
* @throws
*/
</template>
<template autoinsert="false" context="constructorcomment_context" deleted="false" description="Comment for created constructors" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name="constructorcomment">
/**
* Title:
* Description:
* $tags
*/
</template>
<template autoinsert="false" context="settercomment_context" deleted="false" description="Comment for setter method" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.settercomment" name="settercomment">
/**
* @param $param $bare_field_name
*/
</template>
<template autoinsert="false" context="delegatecomment_context" deleted="false" description="Comment for delegate methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name="delegatecomment">
/**
* $tags
* $see_to_target
*/
</template>
<template autoinsert="false" context="gettercomment_context" deleted="false" description="Comment for getter method" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name="gettercomment">
/**
* @return $bare_field_name
*/
</template>
<template autoinsert="false" context="typecomment_context" deleted="false" description="Comment for created types" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.typecomment" name="typecomment">
/**
* @类描述:
* @项目名称:$project_name
* @包名: $package_name
* @类名称:$type_name
* @创建人:$user
* @创建时间:$date$time
* @修改人:$user
* @修改时间:$date$time
* @修改备注:
* @version v1.0
* @see [nothing]
* @bug [nothing]
* @Copyright go3c
* @mail *@qq.com
*/
</template>
<template autoinsert="false" context="filecomment_context" deleted="false" description="Comment for created Java files" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.filecomment" name="filecomment">
/**
* @标题: $file_name
* @包名: $package_name
* @功能描述:$todo
* @作者: $user
* @创建时间: $date $time
* @version v1.0
*/
</template>
<template autoinsert="false" context="fieldcomment_context" deleted="false" description="Comment for fields" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name="fieldcomment">
/**
* @字段:$field
* @功能描述:
* @创建人:$user
* @创建时间:$date$time
*/
</template>
</templates>

三、我们如何在eclipse中使用这个编写好的xml文件呢? 现在我就给大家解析一下吧!
Window –> Preferences –> Java –> Code Style –> Code Templates –> Comments –> Import –> 选择 codetemplates.xml –> OK 添加后可以自己修改邮箱地址。创建人名称可以在eclipse目录下的eclipse.ini 中增加一行 -Duser.name=”whateveryouwant”。
四、我们在eclipse中如何快速使用我们写好的注释模块信息呢?
添加注释时在类名上输入/**然后回车就会自动生成如下格式注释:

/**
*
* @类描述:
* @项目名称:
* @包名:
* @类名称:AppDao
* @创建人:
* @创建时间:2014-4-30上午10:32:30
* @修改人:
* @修改时间:2014-4-30上午10:32:30
* @修改备注:
* @version v1.0
* @see [nothing]
* @bug [nothing]
* @Copyright
* @mail
*/

在方法名上输入/**然后回车就会自动生成如下格式注释:
/**
*
* @描述:
* @方法名: UpdatePlayerHistory
* @param db
* @param item
* @return
* @返回类型 int
* @创建人
* @创建时间 2014-4-30上午10:22:36
* @修改人
* @修改时间 2014-4-30上午10:22:36
* @修改备注
* @since
* @throws
*/

描述内容需要自己手动填写。

以上是关于java中如何自动生成注释的主要内容,如果未能解决你的问题,请参考以下文章

2-7:如何在java中使用注释

如何在Eclipse中如何自动添加注释和自定义注释风格

如何在Eclipse中如何自动添加注释和自定义注释风格

如何获取java代码中的注释

生成JavaDoc文档

eclipse各种注释如何自动添加