有什么区别

/**
 * comment
 *
 *
 */

and

/*
 * 
 * comment
 *
 */

在Java中?什么时候使用它们?


当前回答

下面Java代码列表中的注释是灰色字符:

/** 
 * The HelloWorldApp class implements an application that
 * simply displays "Hello World!" to the standard output.
 */
class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!"); //Display the string.
    }
}

Java语言支持三种注释:

/* text */

编译器会忽略从/*到*/的所有内容。

/** documentation */

这表示一个文档注释(简称文档注释)。编译器会忽略这种注释,就像它会忽略使用/*和*/的注释一样。JDK javadoc工具在准备自动生成的文档时使用文档注释。

// text

编译器会忽略从//到行尾的所有内容。

现在,关于你应该在什么时候使用它们:

当您想注释一行代码时,请使用// text。

当你想注释多行代码时,使用/* text */。

使用/** documentation */当您想要添加一些关于程序的信息,可以用于自动生成程序文档。

其他回答

单个注释,例如://注释 多行注释,例如:/* comment */ Javadoc注释,例如:/** comment */

对于Javadoc,首先是在类、接口、方法等的顶部定义。您可以根据名称使用Javadoc来记录您的代码,说明类做了什么或方法做了什么等等,并生成关于它的报告。

第二个是代码块注释。 例如,你有一些代码块,你不想编译器解释,然后你使用代码块注释。

另一个是// 这可以在语句级别上使用,以指定接下来的代码行应该做什么。

还有一些其他的,比如//TODO,这将标记你想要在那个地方做某事

当你有一些临时解决方案,但你想稍后访问并使其更好时,可以使用FIXME。

希望这能有所帮助

Java支持两种类型的注释:

/*多行注释*/:编译器忽略从/*到*/的所有内容。注释可以跨越多行。 编译器会忽略从//到行尾的所有内容。

一些工具(如javadoc)使用特殊的多行注释来实现它们的目的。例如,/** doc注释*/是javadoc在准备自动生成的文档时使用的文档注释,但对于Java来说,它是一个简单的多行注释。

第一个是Javadoc注释。javadoc工具可以对它们进行处理,生成类的API文档。第二个是普通的块注释。

我认为现有的答案并没有充分解决这部分问题:

什么时候使用它们?

如果您正在编写一个将在组织内发布或重用的API,那么您应该为每个公共类、方法和字段,以及受保护的方法和非最终类的字段编写全面的Javadoc注释。Javadoc应该涵盖方法签名不能传达的所有内容,比如前置条件、后置条件、有效参数、运行时异常、内部调用等。

如果您正在编写内部API(同一程序的不同部分使用的API),那么Javadoc可以说就不那么重要了。但是为了维护程序员的利益,您仍然应该为任何正确用法或含义不明显的方法或字段编写Javadoc。

Javadoc的“杀手级特性”是它与Eclipse和其他ide紧密集成。开发人员只需要将鼠标指针悬停在标识符上,就可以了解有关该标识符的所有信息。经常参考文档成为有经验的Java开发人员的第二天性,这可以提高他们自己的代码质量。如果您的API没有使用Javadoc进行文档化,有经验的开发人员将不希望使用它。