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