This is a problem where the decorator pattern applies. You are strictly adding simple functionality to an existing class that's already in use. In this case, extending the class by inheritance is a natural and low threat implementation.
The overhead in Java of using the extended class vs. the base class is essentially zero. I am not counting as "overhead" the space for the dirty flag and the few instructions needed to implement it. But these costs are very low as well.