java - JavaDoc中的`.`和`#`有什么区别?
问题描述
我在上述方法的 Javadoc 中有这一行:
* {@link client.navigator.URLManager.newToken(NavigationToken)}
和 Intellij IDEA 分析器将其突出显示为错误:
无法解析符号“client.navigator.URLManager.newToken”
但如果我改变.
它就#
可以了。
* {@link client.navigator.URLManager#newToken(NavigationToken)}
有什么区别?.
因为我在项目中有很多地方#
。
解决方案
.
将包的部分和包与类分开。
#
将类名与字段、方法或构造函数分开。
即在client.navigator.URLManager#newToken
是client.navigator
一个包,URLManager
是一个类,newToken
是方法名。
甚至可以#someMethod
在不指定类的情况下引用当前类中的方法(对于字段也是如此,...)。
请注意,在内部类的情况下,将有多个类名:java.lang.Thread.State
是包java.lang
中的一个内部类,位于内部Thread
并命名为State
。内部类和顶级类之间没有语法差异,识别这种差异(无需查找类)的唯一方法是查看它Thread
是否大写,因此可能是一个类(但 Java 允许小写类和大写类包,即使约定禁止它们)。
推荐阅读
- linux - 如何在某一行之上 sed 变量的输出?
- maximo - 使用 Maximo 集成框架 MXINVISSUE 发布部分时出错
- swift - 系统默认?
- html - CSS内的列结构
- ansible - Ansible 模块生成两个字符串之间的差异
- r - 更改 geom_raster 中的色带以更好地显示异常值
- swift - 如何在 RealmSwift 中声明一个二维数组
- c# - 检索 ListViewItem 的值
- scala - 通用嵌套类型推断适用于 arity-2,但不适用于柯里化
- r - 试图在 grid.arrange 和arrangeGrob 中平衡地块的底部。还试图移动 Y 轴标签