🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 注释(Comments) 在这一节,我们会讲一下注释(Comments),单行注释(Single Line Comments)和多行注释(Multi Line Comments)还有JavaDoc风格的注释。 所以回到IntelliJ 注释不是可执行的代码,它们可以放在任意地方,注释可以让你的代码更容易读懂。但是如果有过多的注释,代码也会可读性很差,且难以理解。在考试当中你不会看到很多的注释, 基本上出考题的人会尽量让代码更加难以理解,更加难读懂。 在这一节,你会看到很多问题,类型可能会出现在考试中的。在这个课程中,你经常会看到代码有注释,写注释总是一个好习惯。以便你在几周或几个月后再看自己的代码时,更容易看懂当初写的是什么。 ### 单行注释(Single Line Comments) 所以让我们先看一下单行注释 单行注释由两个正斜杠(Slash)开始 //, 然后是注释的内容。例如 ```java package io.zwt; public class Main { public static void main(String[] args) { // printing size of arguments System.out.println("args-size= " + args.length); for (int i = 0; i < args.length; i++) { System.out.println("args[" + i + "]=" + args[i]); } } } ``` 上面的就是单行注释,你甚至可以有空的注释 ```java // // ``` 你也可以注释掉代码,英文说法是 comment out ```java package io.zwt; public class Main { public static void main(String[] args) { // printing size of arguments // // //System.out.println("args-size= " + args.length); for (int i = 0; i < args.length; i++) { System.out.println("args[" + i + "]=" + args[i]); } } } ``` 被注释掉的代码,不会再执行。在IntelliJ 可以使用快捷键 `Ctrl+/`注释掉某行。例如我可以选项某行,或者多个行,然后按下 `Ctrl+/`,这样子就会注释掉所选的行。如果是多行注释就是 `Ctrl+Shift+/`。 ### 多行注释(Multi Line Comments) 多行注释由正斜杠和星号开始,即 `/*` 所以如果我现在输入 `/*` 下边的代码就不再编译了,提示由编译错误了。Unclose comment。 所以为了关闭这个多行注释块,我们需要输入 `*/`。 这样就形成了多行注释,或者是块注释(Block Comments),所以就是有一对的,开闭的。 `/* */` 例如下面代码就是注释掉了 for 循环。 ```java package io.zwt; public class Main { public static void main(String[] args) { // printing size of arguments // // //System.out.println("args-size= " + args.length); /* for (int i = 0; i < args.length; i++) { System.out.println("args[" + i + "]=" + args[i]); } */ } } ``` 接下来我们恢复for循环,在它上面写多行注释: ```java package io.zwt; public class Main { public static void main(String[] args) { // printing size of arguments // // //System.out.println("args-size= " + args.length); /* * printing arguments * another line. */ for (int i = 0; i < args.length; i++) { System.out.println("args[" + i + "]=" + args[i]); } } } ``` ### JavaDoc风格注释 还有一种注释就是JavaDoc风格的注释,也就是文档注释,它们可以被JavaDoc文档工具处理。如果你使用JavaDoc工具生成文档,这些注释里的内容就会出现在文档上。 在IntelliJ 里面创建的JavaDoc风格的注释,是输入 `/**` 然后按`Enter`这样就会是JavaDoc风格的注释。因为它开头是 `/**`两个星号,然后换行。 JavaDoc风格的注释通常出现在类或者是方法头上。它其实也可以在变量上,但是不用担心这个,后面遇到了会讲的。所以然我们在Main类里边再添加一个JavaDoc注释。 在main方法的头上,输入`/**`按下Enter,发现IntelliJ自动生成了JavaDoc注释,并且添加了 `@param args`。所以这就是方法的参数。如果我们的方法有多个参数,它会添加所有的参数的。然后我们可以为这些参数添加注释了。还可以给方法本身添加注释,例如: ```java package io.zwt; public class Main { /** * This is main method. * @param args command line arguments */ public static void main(String[] args) { // printing size of arguments // // //System.out.println("args-size= " + args.length); /* * printing arguments * another line. */ for (int i = 0; i < args.length; i++) { System.out.println("args[" + i + "]=" + args[i]); } } } ``` 如果方法有返回值,创建JavaDoc注释时,IntelliJ还会自动添加返回值类型`@return`,例如下面: ```java package io.zwt; public class Main { /** * This is main method. * @param args command line arguments */ public static void main(String[] args) { // printing size of arguments // // //System.out.println("args-size= " + args.length); /* * printing arguments * another line. */ for (int i = 0; i < args.length; i++) { System.out.println("args[" + i + "]=" + args[i]); } } /** * * @param a * @param b * @return */ public static int sum(int a, int b) { return a + b; } } ``` 上面的 sum 方法只是一个简单的方法,只是为了演示JavaDoc注释。在这个方法上面用IntelliJ 创建JavaDoc,可以看到: ``` /** * * @param a * @param b * @return */ ``` 两个参数的注释,还有返回值的注释,所以我们可以说: ```java /** * 计算两个整数的和 * @param a 操作数 * @param b 操作数 * @return 求和 */ public static int sum(int a, int b) { return a + b; } ``` 所以如果我们在main方法里边调用这个 sum方法,可以看到IntelliJ提示它需要两个参数,而且如果我们用 `Ctrl+Q`查看一下快速文档,我们也可以看到注释所写的内容。这就是JavaDoc注释的作用。 所以就算是在自己的代码,写JavaDoc注释也很有帮助,有助于了解各个部分,各个方法的作用。