java中的嵌套多行注释

She*_*aig 6 java comments

在编写实验代码时,我发现一次注释掉整个代码块非常有用.但是,我无法找到一种合理的方法在Java中执行此操作,因为我经常最终将嵌套的块注释掉.

在C或C#中,使用#if 0或很容易实现#if false

我似乎无法在Java中找到任何这样的等价物 - 任何帮助都会受到赞赏.谢谢!

Jes*_*own 5

我假设您想要将嵌套代码注释掉以进行调试或测试,对吧?因为在生产代码中留下大量注释掉的代码通常被认为是非常糟糕的风格.

嵌套注释本身不是java的一个特性.所以,你可以做什么?以下是一些不同的选择:

Slash Slash注释嵌套我能想到的最好的方法是使用一个带有热键的编辑器来斜杠,注释掉整个代码块,因为//可以嵌套.Eclipse和Netbeans都有这种支持,尽管它在IDE之间的工作方式上存在细微差别,只要它决定切换注释和嵌套它们.通常嵌套//注释可以在选择不相同的情况下完成.

第三方预处理器那就是说,J2ME在eclipse中使用了预处理器,但我不认为这对桌面java有帮助.如果你搜索它们,似乎有其他预处理器为eclipse编写或兼容.但是,这肯定会妨碍可移植性,因为这不是标准的java功能.

修改注释我经常为快速嵌套注释需要做的另一件事(更多的是在css中不做//注释而不是java)就是在结束内部注释的最后两个字符之间添加一个空格,*/这样java就不会了结束内部评论结束时的外部评论.恢复原始评论并不太困难(但略微手动)./*解析器通常会根据它的模式匹配方式忽略嵌套.例如/*code/*嵌套注释*/更多代码*/`

使用版本控制您还可以轻松地使用大多数版本控制系统来保存代码的副本以及要删除的代码.然后使用版本控制restore/diff/merge来恢复删除的代码.通常这种解决方案被认为是最好的风格.特别是如果这个注释掉的代码需要长时间保留.

if(false)如果您希望批量生成的代码无法同时运行并且在单个函数中,则可以通过在其周围添加if语句来轻松禁用它,条件将永远不会为真,例如,if (false) { ... }显然,这将永远不会传递任何类型的lint类型代码检查工具,但其快速简便;-)