What does the term "canonical form" or "canonical representation" in Java mean?
<p>I have often heard this term being used, but I have never really understood it.</p>

<p>What does it mean, and can anyone give some examples/point me to some links?</p>

<p>EDIT: Thanks to everyone for the replies. Can you also tell me how the canonical representation is useful in equals() performance, as stated in Effective Java?</p>
