When registered against a Realm you'll get notified when a Realm instance has been updated.
Register against a RealmResults or RealmObject to only get notified about changes to them.

Realm instances on a thread without an Looper cannot register a RealmChangeListener.

All RealmObject and RealmResults will automatically contain their new values when
the onChange(Object) method is called. Normally this means that it isn't necessary to query again for those
objects, but just invalidate any UI elements that are using them. If there is a chance that a object has been been
deleted, it can be verified by using RealmObject.isValid().