본관은 연안(延安). 자는 군절(君節), 호는 안락당(顔樂堂). 형조판서 김자지(金自知)의 증손으로, 할아버지는 내자사윤(內資寺尹) 김해(金侅)이고, 아버지는 지중추부사 김우신(金友臣)이며, 어머니는 지청풍군사(知淸風郡事) 이계충(李繼忠)의 딸이다.
어렸을 때 김종직(金宗直)의 문하에서 수업하여 크게 칭찬을 받고 사림의 촉망을 받았다.
1468년(세조 14) 진사시에 1등으로 합격하고, 1471년(성종 2) 별시 문과에 장원으로 급제하여 성균관전적(成均館典籍)에 임용되었다.
그 뒤 병조좌랑·홍문관교리를 지내고, 1479년 통신사의 서장관으로 대마도(對馬島)까지 갔으나 신병으로 인하여 되돌아왔다. 1481년 질정관(質正官)으로 명나라에 다녀와서 홍문관응교, 1483년 전한(典翰)을 지내고 1484년 직제학에 승진하여, 충청도 천안 지방의 수령·만호(萬戶) 등의 불법행위를 사찰(査察)하였다.
1486년 시강관(侍講官)·공조참의에 이르렀다. 풍질(風疾)로 여러 차례 사직을 원하였으나, 1489년 행호군(行護軍)을 역임한 뒤 1490년 행부사과(行副司果)를 지냈다. 성품은 고결하고 지조가 있었으며 언행이 한결같았다. 문장은 율시에 능하였으며, 시호는 문광(文匡)이다.