C++과 Java의 차이점

C++은 이름에서도 알 수 있듯이 C를 확장하여 만든 프로그래밍 언어입니다. (이후로는 C#도 있죠)

C는 절차적 프로그래밍 언어인데 이를 효율적으로 실행할 수 있도록 개선한 언어입니다.

 - 객체 지향 프로그래밍, 예외처리, 제네릭 프로그래밍 등을 지원합니다.

 - 제네릭 프로그래밍은 따로 포스팅 하겠습니다.


Java는 처음 가전제품에 탑재되어 네트워크 컴퓨팅을 하기 위해 만들어졌습니다.

 - 자바 가상 머신 위에서 실행되며 안전하고 이식성이 높습니다.

 - 자바는 C와 비슷한 언어를 사용할 뿐 둘 사이의 호환성은 없습니다.



 C++

 Java

 C 코드와의 하위 호환성

 다른 언어와 호환성은 없음

 직접적인 시스템 라이브러리 호출 가능

 Java Native Interface를 이용 

 저수준의 시스템 접근 가능

 자바 가상 머신 위에서 작동

 선택적 자동 경계 검사

 항상 자동 경계 검사

 부호없는 연산 지원 (unsigned)

 부호 없는 연산 미지원 

 값이나 참조에 의한 매개변수 전달 

 항상 값에 의한 매개변수 전달 

 명시적 메모리 관리, 가비지 콜렉션을 따로 해야함 

 항상 자동 가비지 콜렉션 

 명시적인 자료형 재정의 가능 

 자료형 안전성에 엄격함 

 C++ 표준 라이브러리는 적절한 수준까지 지원함

 광대한 분량의 라이브러리 

 연산자 오버로딩 

 연산자는 재정의 할 수 없음 


출처 : http://ko.wikipedia.org/wiki/%EC%9E%90%EB%B0%94%EC%99%80_C%2B%2B%EC%9D%98_%EB%B9%84%EA%B5%90


'Programming Language > C/C++' 카테고리의 다른 글

C++ 상속  (0) 2014.11.07
C++ Hash와 Map의 차이점  (0) 2014.10.13
C++ STL  (0) 2014.10.10
C++ 템플릿  (0) 2014.10.10
C 헤더파일 중복검사  (0) 2014.10.10
Posted by 긍정왕오킹