As it happens, in this example you're *not* storing a reference to the object. But sure, there's nothing wrong with storing information about your objects outside the objects. That's the simplest way to create a Singleton, for example.
If you want to store a reference to your object inside itself for whatever reason, then you will need to write your own DESTROY method to unpick the circular reference.
Comment on Re: Storing object references internally