사이에는 많은 차이점과 유사점이 있습니다. C++ 프로그래밍 언어와 자바 . C++와 Java의 주요 차이점 목록은 다음과 같습니다.
비교지수 | C++ | 자바 |
---|---|---|
플랫폼 독립적 | C++는 플랫폼에 따라 다릅니다. | Java는 플랫폼 독립적입니다. |
주로 사용 | C++는 주로 시스템 프로그래밍에 사용됩니다. | Java는 주로 응용프로그램 프로그래밍에 사용됩니다. Windows 기반, 웹 기반, 엔터프라이즈 및 모바일 애플리케이션에서 널리 사용됩니다. |
디자인 목표 | C++는 시스템 및 애플리케이션 프로그래밍을 위해 설계되었습니다. 의 연장선이었습니다. C 프로그래밍 언어 . | Java는 인쇄 시스템용 인터프리터로 설계 및 제작되었지만 나중에 지원 네트워크 컴퓨팅으로 확장되었습니다. 더 많은 사람들이 쉽게 사용할 수 있고 접근할 수 있도록 설계되었습니다. |
이동 | C++에서는 goto 문을 지원합니다. | Java에서는 goto 문을 지원하지 않습니다. |
다중 상속 | C++에서는 다중 상속을 지원합니다. | Java는 클래스를 통한 다중 상속을 지원하지 않습니다. 이는 다음을 사용하여 달성할 수 있습니다. 자바의 인터페이스 . |
연산자 오버로딩 | C++ 지원 연산자 오버로딩 . | Java는 연산자 오버로딩을 지원하지 않습니다. |
포인터 | C++에서는 포인터를 지원합니다. C++로 포인터 프로그램을 작성할 수 있습니다. | Java는 내부적으로 포인터를 지원합니다. 그러나 Java에서는 포인터 프로그램을 작성할 수 없습니다. 이는 Java가 Java에서 포인터 지원을 제한했음을 의미합니다. |
컴파일러와 인터프리터 | C++에서는 컴파일러만 사용합니다. C++는 소스 코드를 기계 코드로 변환하는 컴파일러를 사용하여 컴파일되고 실행되므로 C++는 플랫폼에 따라 다릅니다. | Java는 컴파일러와 인터프리터를 모두 사용합니다. Java 소스 코드는 컴파일 시 바이트코드로 변환됩니다. 인터프리터는 런타임에 이 바이트코드를 실행하고 출력을 생성합니다. Java는 해석되므로 플랫폼 독립적입니다. |
값에 의한 호출 및 참조에 의한 호출 | C++에서는 값에 의한 호출과 참조에 의한 호출을 모두 지원합니다. | Java는 값별 호출만 지원합니다. Java에는 참조에 의한 호출이 없습니다. |
구조와 결합 | C++는 구조체와 공용체를 지원합니다. | Java는 구조와 공용체를 지원하지 않습니다. |
스레드 지원 | C++에는 스레드에 대한 기본 지원이 없습니다. 스레드 지원을 위해 타사 라이브러리를 사용합니다. | 자바에는 내장되어 있습니다 실 지원하다. |
문서 설명 | C++에서는 문서 주석을 지원하지 않습니다. | Java는 Java 소스 코드에 대한 문서를 생성하기 위해 문서 주석(/** ... */)을 지원합니다. |
가상 키워드 | C++에서는 함수를 재정의할지 여부를 결정할 수 있도록 가상 키워드를 지원합니다. | Java에는 가상 키워드가 없습니다. 기본적으로 모든 비정적 메서드를 재정의할 수 있습니다. 즉, 비정적 메서드는 기본적으로 가상입니다. |
부호 없는 오른쪽 시프트 >>> | C++에서는 >>> 연산자를 지원하지 않습니다. | Java는 음수의 상단을 0으로 채우는 부호 없는 오른쪽 시프트 >>> 연산자를 지원합니다. 양수의 경우 >> 연산자와 동일하게 작동합니다. |
상속 트리 | C++에서는 항상 새로운 상속 트리를 만듭니다. | 모든 클래스는 Java의 Object 클래스의 하위 클래스이므로 Java는 항상 단일 상속 트리를 사용합니다. Object 클래스는 클래스의 루트입니다. 계승 자바의 트리. |
하드웨어 | C++는 하드웨어에 더 가깝습니다. | Java는 하드웨어와 대화형이 아닙니다. |
객체지향 | C++는 객체 지향 언어입니다. 그러나 C 언어에서는 단일 루트 계층 구조가 불가능합니다. | 자바는 또한 객체지향 언어. 그러나 기본 유형을 제외한 모든 것은 Java의 객체입니다. 모든 것이 java.lang.Object에서 파생되므로 이는 단일 루트 계층 구조입니다. |
메모
- Java는 C++와 같은 기본 인수를 지원하지 않습니다.
- Java는 C++와 같은 헤더 파일을 지원하지 않습니다. Java는 import 키워드를 사용하여 다양한 클래스와 메소드를 포함합니다.
C++ 프로그램 예
파일: main.cpp
#include using namespace std; int main() { cout << 'Hello C++ Programming'; return 0; }
산출:
Hello C++ Programming
자바 프로그램 예
파일: Simple.java
class Simple{ public static void main(String args[]){ System.out.println('Hello Java'); } }
산출:
Hello Java