WEB开发网
开发学院软件开发Java Classworking 工具箱: 注释(Annotation)与 ASM 阅读

Classworking 工具箱: 注释(Annotation)与 ASM

 2010-03-18 00:00:00 来源:WEB开发网   
核心提示: 最后,清单 8 展示了测试运行的控制台输出(首行被折行以适合屏幕):清单 8. 测试运行的控制台输出(首行被折行)[dennis@notebookcode]$java-cplib/asm-2.0.RC1.jar:lib/asm-commons-2.0.RC1.jar:lib/tostring-a

最后,清单 8 展示了测试运行的控制台输出(首行被折行以适合屏幕):

清单 8. 测试运行的控制台输出(首行被折行)

[dennis@notebook code]$ java -cp lib/asm-2.0.RC1.jar:lib/asm-commons-2.0.RC1.jar 
 :lib/tostring-agent.jar:classes -javaagent:lib/tostring-agent.jar 
 com.sosnoski.dwct.Run 
Processing class sun/misc/URLClassPath$FileLoader$1 
Processing class com/sosnoski/dwct/Run 
Processing class com/sosnoski/dwct/Name 
Modifying com/sosnoski/dwct/Name 
Processing class com/sosnoski/dwct/Address 
Modifying com/sosnoski/dwct/Address 
Processing class com/sosnoski/dwct/Customer 
Modifying com/sosnoski/dwct/Customer 
Customer: #=12345 
 Name: Dennis Michael Sosnoski 
 Address: street=1234 5th St. city=Redmond state=WA zip=98052 
 homePhone=425 555-1212 dayPhone=425 555-1213 

结束语

我已经演示了如何使用 ASM 和 J2SE 5.0 注释来完成自动的运行时类文件修改。我用作例子的 ToString 注释是有趣而且(至少对于我来说)比较有用的。单独使用时,并不妨碍代码的可读性。但是注释如果被用于各种不同目的(这种情况将来肯定要发生,因为有如此多的 Java 扩展正在编写或重写以使用注释),就很有可能会影响代码的可读性。

当我在后面的文章中研究注释和外部配置文件的权衡时,我会再回到这个问题上。我个人的观点是,二者都有自己的作用,虽然注释基本上是作为配置文件的更容易的替代方案而开发的,但是独立的配置文件在某些情况下仍然适用。明确地讲,我认为 ToString 注释是一个适当使用的例子!

使用 J2SE 5.0 扩展的一个局限是 JDK 1.5 编译器输出只能与 JDK 1.5 JVM 一起使用。下一篇 Classworking 工具箱 文章,我将介绍一个克服该局限的工具,并展示如何修改 ToString 实现以运行在以前的JVM 上。

本文示例源代码或素材下载

上一页  5 6 7 8 9 10 

Tags:Classworking 工具箱 注释

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