I think that you can't separate the definitions. But I have an ideia.
You can create the subclasses without any atribute. In each subclass you create an association with another class with the atributues.
For example:
Animal have subclasses Cat and Dog. But Can and Dog have several atributes. So, you create CatDescription and DogDescription and put the atributes in the Description classes. In this case, you can map DescriptionCat and DescriptionDog to separate classes.
When you need to send a message to Cat, you do: cat.getDescription().sendMessage();
|