A highly knowledgeable person; expert.
Synonym of know-it-all
Having the manner of a smart aleck.
A smart aleck.