gpt4 book ai didi

java - 使用注释处理检索匿名类中的元素

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

我正在编写一个注释处理器,它需要访问仅存在于匿名类中的元素。具体来说,访问枚举匿名类中的方法。

enum Foo {
BAR {
@MyAnnotation
void doSomething() { [...] }
};

@MyAnnotation
void doSomethingElse() { [...] }
}

在注释过程中调用 roundEnv.getElementsAnnotatedWith(MyAnnotation.class) 时,我没有得到表示 doSomething 方法的元素。但是,我确实获得了一个代表 doSomethingElse 方法的元素,因此它似乎特定于匿名类。我在匿名枚举类中也观察到了相同的字段注释。

我错过了什么?不支持这种处理吗?

最佳答案

不,这不受支持。

在 Java 中,唯一编译器必须告诉它对象上可用的方法的信息是该对象的编译时类型。如果某个方法在对象的已知类型上不可用,那么就编译器而言,它不可用。

关于java - 使用注释处理检索匿名类中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35802384/

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