I have two classes: ChildOne
and ChildTwo
extended from ParentClass
. ChildTwo
has a custom field over the inherited ones.
In some parts of the app, most of the time this ParentClass
is used to display data to UI and some widgets need to know if the instance is ChildTwo
to display the custom field.
However in another part of the app, I have to enhance the ParentClass
, so I created another class EnhancedParentClass extends ParentClass
.
This class use used in most of the widgets, but again there are some widgets that need to know the difference between the EnhancedParentClass
and let's say an extended class ChildTwoEnhancedClass
.
What’s the best way of solving this?
class ChildTwoEnhancedClass extends EnhancedParentClass implements ChildTwo
class ChildTwoEnhancedClass extends ChildTwo implements EnhancedParentClass
Is there a way to do this, without the need to extend the main classes “in paralel” with the “enhanced” one? Or is it something completely wrong with this implementation?
I looked over mixins, but I don’t think they fit this case, as far as I’ve seen mixins are used to share logic(mimic multiple inheritance), not necessarily share class members.
These classes are used as data immutable models.