Java注释@Suppresswarnings的工作原理?

问题描述 投票:0回答:1

我已阅读Java思考,其中我知道AnnotationProcessor使用Reflection来解析注释。

[深入研究源代码后,我知道此注释的保留策略是源代码。因此,我认为也许有一个Processor可以使String像“未使用的”那样,以使IDE的lint禁止显示警告。

但是我不知道我是否正确,如果不正确,那怎么做?

非常感谢,我是新手。

java jvm java-annotations
1个回答
0
投票

通常,注释处理器不打算使用反射,因为它打算在编译时使用。相反,它接收到源代码的编译器模型的抽象,有关详细信息,请参见the java.compiler module

但是,由于对java.compiler注释的支持为@SuppressWarnings,因此不太可能以外部注释处理器的形式随编译器一起提供。相反,支持将直接内置于编译器本身。

否则,编译器需要提供一个用于控制警告的附加API,仅提供一个注释处理器即可获取注释的值并将其反馈回附加API。这将是不必要的复杂性,没有附加价值。

© www.soinside.com 2019 - 2024. All rights reserved.