Let's say that a Zoo has a TicketBooth that has a Food object. We would instantiate and assign field values like this:
The equivalent to this in an object diagram would look this this:
Now let's add an Employee to the Booth.
Now let's give the Employee a Food object.
That's fine and all, but what if Sam wants the food that's the TicketBooth has? Let's try this:
Everything looks the same, but they are two completely different objects. If you did anything to one the other wouldn't change.
So instead what we do is make a "shared reference" that makes the attendant's Food object the same object in the ticket booth.
Now the object diagram is going to change. Instead of two Food object nodes there is only going to be one, but with two arrows referencing it.