【发布时间】:2012-01-28 14:53:50
【问题描述】:
我很好奇是否可以在类或方法上使用注释,在运行期间或之前使用注释字符串的日志记录替换 cmets。例如,如果在 android 上:
@LogComments
class MyActivity extends Activity {
@Override public void onCreate(Bundle b) {
super.onCreate(b);
// set some local vars
int a = 1;
int b = 2;
}
}
会翻译成类似的东西
class MyActivity extends Activity {
@Override public void onCreate(Bundle b) {
super.onCreate(b);
Log.d("TAG", "set some local vars");
int a = 1;
int b = 2;
}
}
【问题讨论】:
-
那必须在编译之前,类文件中不保留cmets。
-
我不认为有这样的工具,我不相信它会是一个好主意。日志旨在跟踪程序在调试阶段所做的事情(通常应该删除这些日志)。日志还可以用于一些高级日志记录,例如错误报告或帮助开发人员使用工具。注释旨在解释代码的困难部分。他们没有相同的意图。 *
-
哦,在 android 中,强烈建议在发布产品之前删除对 Logging 的所有调用。通常通过混淆
-
是的,我非常了解建议,无论您是否认为这是一个好主意,都与回答问题无关。在开发过程中有这样的用例可能证明是有用的,例如在 android 开发过程中用注释良好的代码跟踪临时 ANR,以提供从哪里开始调查的快速提示。喜欢导致 adb 断开连接的 ANR 类型。
标签: java android annotations comments