我可以使用自定义注释对Java类进行分类吗


  1. 是否可以使用自定义的Annotation将java类分类到不同的产品函数中?(以下是我的想法(
  2. 如果没有,在Android项目中是否有其他方法可以达到同样的目的

Step1:使用自定义注释来明确java类的函数

@SelfDefinedAnnotation( "product-function-a" )
class MyClass {
void func() {
//do something
}
}

步骤2:在构建期间,生成一个类似的映射文件

MyClass -> product-function-a
YourClass -> product-function-b

我不确定android(从未使用过它(,但在纯java中,它肯定是可能的。

您应该使用保留策略SOURCE定义一个注释,既然您谈论的是构建时,那么就定义一个注解处理器。这就是";钩状的";并允许创建这样的映射(我假设您想将其存储在某种文件中,可能是*.properties文件,甚至生成具有这些定义的java源代码。

注释处理器是一个广泛的主题,有很多方法可以注册它们,所以它在很大程度上取决于你如何准确地构建你的东西,但这是一个大致的方向。

请查看本教程,它介绍了注释处理器、注册它们的方法、与自定义注释关联的方法等等。

不过,有一个建议是,如果您要生成JavaSource类,而不仅仅是一个属性文件,那么本教程将转到";低电平";并尝试自己准备语法,我建议使用更好的(IMO(Java Poet库,这将有助于生成正确的Java代码

最新更新