Здравствуйте, victor_od, Вы писали:
_>Проблема в том что каждый создаваемый класс, должен иметь конструктор, копирующий BaseHeader в поля своего базового класса _>(что-то вроде "конструктор глубокого копирования" ), это неудобно и не очень красиво. _>Как можно было бы сделать по другому?
Не понял зачем конструктор к этой задаче приплетать. Значения можно писать через сеттеры (Introspector, BeanUtils, Reflection) и даже напрямую в поля (Reflection + setAccessible(true)).