What do the equals and hashcode methods have to do with when you might use a WeakHashMap over a HashMap?
The WeakHashMap javadocs Matthew mentioned have a lengthy explanation; it would appear that you have not read it so far - that's where
you should start.