gpt4 book ai didi

java - 在运行期间或之前用日志记录替换 java 注释

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:18:53 25 4
gpt4 key购买 nike

我很好奇是否可以在类或方法上使用注解,在运行期间或运行之前用注释字符串的记录替换注释。例如,如果在 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;
}
}

最佳答案

开箱即用。不,没有任何东西允许这样做。

现在,如果您想自己构建它,您可以创建某种编译器扩展,允许您解析文件并将注释转换为日志表达式,具体取决于存在的注释。但这必须作为编译阶段的一个步骤发生,因为注释不是类文件的一部分,所以它不可能在运行时发生。

但是,您正在谈论一个相当大的副项目来创建这样的东西。此外,这种方法也有局限性,比如如果不在注释中添加某种表达式语言,就不可能在运行时写出变量值。最后,您将创建一些复杂的东西,而不是一些已经存在的、健壮的,并且通过使用 API 被使用了数百万次的东西。

关于java - 在运行期间或之前用日志记录替换 java 注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8646671/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com