As we mentioned earlier, when we talk about inserting an object into a collection, what we really mean is that we're inserting a reference to the object, not the object itself. This implies that the same object can be referenced by multiple collections simultaneously. Think of a person as an object, and his or her telephone number as a handle for reaching that person. Now, as we proposed earlier in this chapter, think of an address book as a collection: it's easy to see that the same person's phone number (reference) can be recorded in many different address books (collections) simultaneously.
Now, for an example relevant to the SRS: given the students who are registered to attend a particular course, we may simultaneously maintain the following:
An ordered list of these students for purposes of knowing who registered first for a follow-on course
A dictionary that allows us to retrieve a given Student object based on his or her name
Perhaps even a second SRS-wide dictionary that organizes all students at the university based on their student ID numbers
This is depicted conceptually in Figure 6-11.