# C언어와 자바의 차이
C언어에 어떤 개념이 추가되어 자바가 만들어진건가요?
sehongpark님의 답변
## 답변
여러 가지 것들이 있습니다만, 가장 두드러진 개념은 객체지향 패러다임과 가비지콜렉션 그리고 JVM입니다.
## 객체지향 패러다임
객체지향이란, 프로그램을 잘게 나누어 부품화 한 뒤, 조립하는 형식으로 개발하는 방법입니다. 여기서 나오는 개념이 **클래스**와 **객체**가 되겠습니다.
## 가비지 콜렉션
가비지 콜렉션이란, 비 사용 메모리를 자동 처리하는 개념입니다. 이로 인하여, 개발자는 더욱 개발에 집중할 수 있게 되었습니다.
## JVM
JVM은 자바의 **이식성**을 가능하게 한 기술입니다.
JVM은 Java Virtual Machine의 약자로, 자바 바이트코드를 OS에 맞게 해석해줍니다. 이로 인해 바이트코드는(JVM만 설치되어있다면) OS에 상관없이 실행가능하게 되었습니다.
C언어의 경우, OS 및 컴퓨터 아키텍처에 따라, 기존 코드를 재사용하기 어려운 단점이있습니다.
## 참고자료
---
1. https://goo.gl/4yniWS