Почему аннотации java?

Я хочу спросить, почему аннотации java так часто используются ... Я знаю, что они заменили конфигурацию xml, например, в jpa, но почему вообще используется такая конфигурация? Рассмотрим этот фрагмент кода:

@Entity 
class Ent{
   // some fields
}
//... somewhere in the other file far far away
class NonEnt{
   // whatever here
}
Теперь, когда я пытаюсь поместить это в контекст сохранения, с помощью метода persist EntityManager, я получаю ошибку времени выполнения (лучше было бы получить ошибку компиляции) при попытке сохранить экземпляр NonEnt. Для меня есть очевидное решение: заставить сущности реализовывать какой-то интерфейс без методов вместо использования @Annotations. Но среди разработчиков фреймворков это не пользуется популярностью, в чем недостаток этого решения?
Спасибо за ответ ...
15
задан Neeme Praks 26 November 2010 в 13:29
поделиться