斌斌 (给我写信)
原创博文(http://blog.csdn.net/binbinxyz),转载请注明出处

java凝视

java里面有两种类型的凝视。一种是以“/*”起头,以“*/”结尾。并能够跨越多行的凝视。例如以下:

/*
* 这是一段凝视。
* 它跨越了多行
*/

还有一种是以“//”开头的凝视。也叫单行凝视,格式例如以下:

// 这是一个单行凝视

凝视文档

注:本节内容摘自java编程思想第四版2.8.1凝视文档章节

对于java语言,最体贴的一项设计就是人们也须要考虑程序的文档化问题。

而对程序的文档化。最大的问题莫过于对文档的维护。若文档与代码分离。那么每次改变代码后都要改变文档,这无疑会变成相当麻烦的一件事情。解决办法看起来似乎非常easy:将代码同文档“链接”起来。为达到这个目的,最简单的方法是将全部内容都置于同一个文件。然而,为使一切都整齐划一,还必须使用一种特殊的凝视语法,以便标记出特殊的文档;另外还须要一个工具,用于提取这些凝视,并按有价值的形式将其展现出来。这些都是Java必须做到的。

用于提取凝视的工具叫作javadoc。它採用了部分来自Java编译器的技术。查找我们置入程序的特殊凝视标记。

它不仅提取由这些标记指示的信息,也将毗邻凝视的类名或方法名提取出来。

这样一来,我们就可用最轻的工作量,生成十分专业的程序文档。

javadoc输出的是一个HTML文件,可用自己的Web浏览器查看。该工具同意我们创建和管理单个源文件,并生动生成实用的文档。因为有了javadoc。所以我们可以用标准的方法创建文档。并且因为它很方便,所以我们能轻松获得全部Java库的文档。

javadoc案例

【实验环境】

MyEclipse 10.0 + jdk 1.6.0_13

【实验步骤】

一、新建一个java项目doc。

二、新建一个java文件org.hbin.JavaDocTest.java。并加入类凝视。例如以下图:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYmluYmlueHl6/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

三、在命令行工具中打开该项目src所在路径,使用javadoc命令导出java文档凝视。

命令例如以下:

> javadoc org/hbin/JavaDocTest.java

执行效果例如以下图:

刷新项目。生成的文档文件夹结构例如以下:

此时。文档与源代码混在一起。不便于管理维护。能够加入-d參数来指定输出文件的目标文件夹。

命令例如以下:

> javadoc -d ../doc org/hbin/JavaDocTest.java

例如以下图:



watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYmluYmlueHl6/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

此时。打开项目中doc文件夹下的index.html文件就可以看到我们刚刚生成的文档结构。例如以下图:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYmluYmlueHl6/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

四、參考以上三个步骤,你已经能够生成自己的凝视文档了。但假设你的凝视中包括中文或其它非英文字符,那么它可能会乱码的。此时。能够通过-charset和-encoding參数来指定编码。-charset參数指定查看生成html的编码,即在html文档中加入<META http-equiv="Content-Type" content="text/html; charset=UTF-8">。而-encoding參数指定源文件编码。

命令例如以下:

> javadoc -charset UTF-8 -encoding UTF-8 -d ../doc org/hbin/JavaDocTest.java

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYmluYmlueHl6/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

版权声明:本文博主原创文章,博客,未经同意不得转载。

javadoc入门的更多相关文章

  1. DWR实现后台推送消息到web页面

    DWR简介 DWR(Direct Web Remoting)可用于实现javascript直接调用java函数和后台直接调用页面javascript代码,后者可用作服务端推送消息到Web前端. (服务 ...

  2. 【Java从入门到精通】day08-包机制-JavaDoc生成文档

    1.包机制 为了更好地组织类,Java提供了包机制,用于区别类名的命名空间. 包语句的语法格式为: package pkg1[.pkg2[.pkg3...]]; 一般利用公司域名倒置作为包名(如www ...

  3. SpringMVC 入门

    MVC 简介 1.MVC 是一种架构模式 程序分层,分工合作,既相互独立,又协同工作,分为三层:模型层.视图层和控制层 2.MVC 是一种思考方式 View:视图层,为用户提供UI,重点关注数据的呈现 ...

  4. java安全管理器SecurityManager入门

    table { margin-left: 30px; width: 95%; border: 1px; border-collapse: collapse } img { border: 1px so ...

  5. Flume NG Getting Started(Flume NG 新手入门指南)

    Flume NG Getting Started(Flume NG 新手入门指南)翻译 新手入门 Flume NG是什么? 有什么改变? 获得Flume NG 从源码构建 配置 flume-ng全局选 ...

  6. Apache Shiro系列三,概述 —— 10分钟入门

     一.介绍 看完这个10分钟入门之后,你就知道如何在你的应用程序中引入和使用Shiro.以后你再在自己的应用程序中使用Shiro,也应该可以在10分钟内搞定. 二.概述 关于Shiro的废话就不多说了 ...

  7. Quartz2之入门示例【转】

    原文地址:http://liuzidong.iteye.com/blog/1118992 环境:XP+Myeclipse6.5+JDK1.6 quartz官网:http://www.quartz-sc ...

  8. Eclipse_luna_J2EE_For_JS+tomcat8.0环境搭建、配置、开发入门

    一.所有需要的软件.插件等下载地址 J2SE的官方下载路径:http://www.oracle.com/technetwork/java/javase/downloads/index.html Ecl ...

  9. SpringMVC从入门到精通之第四章

    第一个知识点:@Controller注解,用于标识这个类是一个后端控制器(类似struts中的action),主要作用就是接受页面的参数,转发页面.中间的业务逻辑是调用业务类处理的这个就是MVC设计模 ...

随机推荐

  1. C++学习之函数指针

     C++学习之函数指针          和数据项类似,函数也有地址,函数的地址是存储在机器语言代码的内存的开始地址.通常,这些地址对用户而言,不重要也没什么用处,但对程序而言,它却很有用. 一.函数 ...

  2. 《Pointers On C》读书笔记(第一章 快速上手)

    1.C语言是一种自由格式的程序设计语言,没有规则要求我们必须如何书写语句.然而,如果我们在编写程序时能够遵守一些约定还是非常值得的,它可以使代码更加容易阅读和修改.另外,预处理命令有较为严格的规则. ...

  3. c++实现将表达式转换为逆波兰表达式

    https://github.com/Lanying0/lintcode 所属: 数据结构->线性结构->栈 问题: 给定一个表达式字符串数组,返回该表达式的逆波兰表达式(即去掉括号). ...

  4. 1分钟搞定超慢SQL

    前几天,一个用户的研发人员找到我了,说他们有个SQL语句非常慢,我说多慢?他们说:半个小时也没出结果.于是问他们要了SQL语句和执行计划,SQL语句就不能再这里贴出来了,下面是调整前的执行计划(略去某 ...

  5. Android常用控件之ExpandableList的使用

    先来看下什么是ExpandableListView 跟列表有点像,这种是可以折叠的列表,下面来看下是如何在代码中实现 一.在布局文件中声明一个ExpandableListView <Linear ...

  6. CVT电子集团--笔试部分试题

    之前有在网上答了下CVT的网上笔试题,特别把它们都弄下来,答案参考,不一定是对的,有错希望大家能提出来. 1.有关系R和S,R∩S等价于(B) A.S-(R-S)    B.R-(R-S)   C.( ...

  7. 一套手写ajax加一般处理程序的增删查改

    倾述下感受:8天16次驳回.这个惨不忍睹. 好了不说了,说多了都是泪. 直接上代码 : 这个里面的字段我是用动软生成的,感觉自己手写哪些字段太浪费时间了,说多了都是泪 ajax.model层的代码: ...

  8. Git跨平台中文乱码临时解决方案

    Git 是一个非常优秀的分布式版本控制系统,最初为Linux Kernel版本管理进行量身定做.优点是,和其他版本控制系统相比,稳定,速度快,跨平台,易学易用,无需要花费成本.更多优点请点击阅读:ht ...

  9. jQuery插件-jgcharts实现Javascript制作Google Charts

    from:http://www.zz68.net/program/Ajax/2010/0415/1992.html jgcharts是一个基于jQuery的非常经典的Google Charts图表制作 ...

  10. c++之构造函数学习

    #include<stdio.h> class Test {      private:      int i;      int j;      int k;     public :  ...