WEB开发网
开发学院软件开发Java Tiger 中的注释,第 2 部分: 定制注释 阅读

Tiger 中的注释,第 2 部分: 定制注释

 2009-11-11 00:00:00 来源:WEB开发网   
核心提示: 这里同样没有多少花样,清单 4 假设已经引入了 com.oreilly.tiger.ch06.TODO ,Tiger 中的注释,第 2 部分: 定制注释(3),因此源代码中的注释 不 需要包名作前缀,此外,但是只有这些值与默认值不同的时候才需要指定其他的值,那么设置默认值就是一种很好的办法,需要

这里同样没有多少花样。清单 4 假设已经引入了 com.oreilly.tiger.ch06.TODO ,因此源代码中的注释 不 需要包名作前缀。此外,需要注意的是,清单 4 中采用了简写的方法:将值 ("Figure out the amount of interest per month") 直接提供给注释,没有指定成员变量名。清单 4 和清单 5 是等价的,后者没有采用简写形式:

清单 5. 清单 4 的“加长”版
@com.oreilly.tiger.ch06.InProgress 
@TODO(value="Figure out the amount of interest per month") 
public void calculateInterest(float amount, float rate) { 
 // Need to finish this method later 
} 

当然作为编码人员,我们都不愿意跟这种“加长”版搅在一起。不过要注意,只有当注释类型只有 一个 成员变量,而且变量名为 value 时,才能使用简写形式。如果不符合这个条件,那么就无法利用这种特性。

设置默认值


迄今为止,您已经有了一个很好的起点,但是要做得完美,还有很长的一段路要走。您可能已经想到,下一步就要为注释设置某个默认值。如果您希望用户指定某些值,但是只有这些值与默认值不同的时候才需要指定其他的值,那么设置默认值就是一种很好的办法。清单 6 用另一个定制注释 —— 来自 清单 4 的 TODO 注释类型的一个全功能版本,示范了这个概念及其实现:
清单 6. 带有默认值的注释类型
package com.oreilly.tiger.ch06; 
public @interface GroupTODO { 
 public enum Severity { CRITICAL, IMPORTANT, TRIVIAL, DOCUMENTATION }; 
 Severity severity() 
    default Severity.IMPORTANT; 
 String item(); 
 String assignedTo(); 
 String dateAssigned(); 
} 

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Tiger 注释 部分

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接