/ * ... * /和/ ** ... * /之间有什么区别

时间:2014-11-23 16:46:20

标签: java android eclipse

' ave注意到Eclipse为评论打印了不同的格式:

/* Eclipse prints it in green 
*/

或者如果你写:

/** Eclipse prints it in blue
*/

这两种评论之间有什么区别?

3 个答案:

答案 0 :(得分:6)

/* 
* It is multi-line comment in Java
*
*/

/** 
* It is a Javadoc. Can be found above methods and Class definitions.
*
*
*/

以下是Wikipedia关于Javadoc的摘录:

  

通过标准多行注释从代码中引发Javadoc注释   标签/ *和* /。开始标记(称为开始 - 注释分隔符)具有   一个额外的星号,如/**.

The first paragraph is a description of the method documented.
Following the description are a varying number of descriptive tags, signifying:
    The parameters of the method (@param)
    What the method returns (@return)
    Any exceptions the method may throw (@throws)
    Other less-common tags such as @see (a "see also" tag)

班级Javadoc示例:

/**
 * @author      Firstname Lastname <address @ example.com>
 * @version     1.6                 (current version number of program)
 * @since       2010-03-31          (the version of the package this class was first added to)
 */
public class Test {
    // class body
}

方法级别Javadoc示例:

/**
 * Short one line description.                           
 * <p>
 * Longer description. If there were any, it would be    
 * here.
 * <p>
 * And even more explanations to follow in consecutive
 * paragraphs separated by HTML paragraph breaks.
 *
 * @param  variable Description text text text.          
 * @return Description text text text.
 */
public int methodName (...) {
    // method body with a return statement
}

答案 1 :(得分:3)

/* ... */ 

只是一个评论。

/** ... */

是一个javadoc,然后可以通过一个奇怪的工具javadoc将其转换为一个很好的HTML文档。这个工具考虑了javadoc注释本身,类/接口/方法的声明,以及任何其他超级/子类实现/契约(在创建&#34;由&#34;&#34;&#34;覆盖&#34;信息;例如,方法)。最值得注意的例子是Java SE API doc itself

此文档注释包含自己的标记,例如@see Bar。它可以指定编程方面的考虑因素,例如方法参数及其描述,方法的返回类型,声明抛出方法的异常以及抛出它们的环境以及其他信息。

例如,ArrayList#toArray()记录为

  

public <T> T[] toArray(T[] a)

     

返回一个包含此列表中所有元素的数组   序列(从第一个到最后一个元素);运行时的类型   返回的数组是指定数组的数组。如果列表适合   指定的数组,在其中返回。否则,一个新的数组是   分配了指定数组的运行时类型和大小   这个清单。

     

如果列表适合指定的数组,并且有空余空间(即   数组中包含的元素多于列表中的元素   紧接在集合结束后设置为null。 (这个   仅在调用者时才有助于确定列表的长度   知道列表不包含任何null元素。)

     

指定人:
      接口集合中的toArray
  指定人:
      toArray在接口列表中   的覆盖:
      toArray类AbstractCollection
  类型参数:
      T - 包含集合的数组的运行时类型   的参数:
      a - 要存储列表元素的数组(如果它足够大);否则,为此目的分配一个相同运行时类型的新数组   的返回:
      包含列表元素的数组
  的抛出:
      ArrayStoreException - 如果指定数组的运行时类型不是此列表中每个元素的运行时类型的超类型
      NullPointerException - 如果指定的数组为空

 /**
 * Returns an array containing all of the elements in this list in proper
 * sequence (from first to last element); the runtime type of the returned
 * array is that of the specified array.  If the list fits in the
 * specified array, it is returned therein.  Otherwise, a new array is
 * allocated with the runtime type of the specified array and the size of
 * this list.
 *
 * <p>If the list fits in the specified array with room to spare
 * (i.e., the array has more elements than the list), the element in
 * the array immediately following the end of the collection is set to
 * <tt>null</tt>.  (This is useful in determining the length of the
 * list <i>only</i> if the caller knows that the list does not contain
 * any null elements.)
 *
 * @param a the array into which the elements of the list are to
 *          be stored, if it is big enough; otherwise, a new array of the
 *          same runtime type is allocated for this purpose.
 * @return an array containing the elements of the list
 * @throws ArrayStoreException if the runtime type of the specified array
 *         is not a supertype of the runtime type of every element in
 *         this list
 * @throws NullPointerException if the specified array is null
 */

答案 2 :(得分:0)

它们是java中的3种注释:

单一评论

// This is a single line comment

多行评论

/* This is a
multi-line comment */

文档评论

/**
* This is a <b>documentation comment</b>
*/

编译器将忽略所有这些,但javadoc工具将使用doc注释进行javadoc生成,您可以使用HTML格式。您还可以使用@see@author

等标记