An alternative to extending the RealmObject base class is implementing the RealmModel interface and adding the @RealmClass annotation.
All methods available on RealmObject are then available through static methods.
Considering that extending any non-
RealmObject classes is not possible even if you're implementing
RealmModel and adding
@RealmClass, in my opinion you just get additional complexity by forcing yourself to use for example
RealmObject.isValid(realmObject) instead of
realmObject.isValid() that you get naturally for free using
So no, you should stick to extending
implements RealmModel gives you no additional benefit.