为什么使用java注释?

2022-09-03 01:37:41

我想问为什么Java注释被使用得如此之多...我知道他们取代了例如jpa中的xml配置,但是为什么使用这种配置呢?请考虑以下代码段:

@Entity 
class Ent{
   // some fields
}
//... somewhere in the other file far far away
class NonEnt{
   // whatever here
}
现在,当我尝试将其放在持久性上下文中时,使用 的 persist 方法,我收到运行时错误(最好是获取编译错误),尝试持久化实例。对我来说有明显的解决方案,强制实体实现一些无方法接口,而不是使用@Annotations。但这在框架设计人员中并不受欢迎,这个解决方案的缺点是什么?
感谢您的回答...EntityManagerNonEnt

答案 1

与标记接口相比,注释具有一些优点:

  • 它们可以参数化
  • 它们更细粒度 - 您不仅可以将它们附加到类,还可以附加到其他类元素(字段,方法,方法参数等)

注释也应该不那么具有侵入性,但这一点是品味和值得商榷的问题。

另请参阅:


答案 2

与强制客户端实现接口或扩展类相比,使用注释的侵入性要小得多。


推荐