본관은 고성(固城). 자는 사인(士仁). 호는 용암(勇菴). 아버지는 김낙성(金樂聲), 어머니는 광주정씨(光州鄭氏)로 정희원(鄭喜元)의 딸이다. 처음 박완진(朴琓鎭)에게 글을 배웠고, 뒤에 임헌회(任憲晦)의 문하에서 수학했다.
어려서부터 문장이 뛰어났으나 세월이 어지러워지자 과거에 응시하지 않고 오직 경사(經史) 연구에 몰두했다. 효성이 지극하여 어머니의 병이 위독하자 손가락을 끊어 소생시켰다. 외국의 문물이 들어옴을 싫어하여 가까이하지 않았고, 서학(西學)을 사학(邪學)이라 규정하여 척사운동을 벌였다.
역사에 대한 바른 지식을 알리기 위해 「통사문답(通史問答)」을 지어서 교육했고 유학의 계통을 밝히고자 「중국학통(中國學統)」을 지었다. 맹자(孟子)의 성선설(性善說)과 순자(筍子)의 성악설(性惡說)을 대비하여 비판한 「성설(性說)」이 있다.
성리학에 있어서는 이이(李珥)의 이기일원론(理氣一元論)의 입장을 지지했다. 학행이 알려져서 1904년 중학교관(中學校官)에 추서되었다. 저서로는 『용암집(勇菴集)』 7권이 있다.