Definitions:
The word homonym is actually a little confusing. There is a a need to explain the difference between the two words that are exactly alike.
Homonym:
One of two or more words spelled and pronounced alike but different in meaning:
cleave = to cut
cleave = to adhere to
Coincidentally, also antonyms or opposites
Homophone:
One of two or more words pronounced alike but different in meaning or spelling:
to
too
two
Homograph:
One of two or more words spelled alike but different in meaning or pronunciation:
bow (ship)
bow (verb action meaning to bend at the waist in respect)
bow (and arrow)
bow (as in the the bow in your beautiful hair)
Here is a list of homonyms:
http://www.cooper.com/alan/homonym_list.html