java
C++는 C 프로그래밍 언어의 기능과 Simula67(첫 번째 객체 지향 언어)을 포함하는 컴퓨터 프로그래밍 언어입니다. C++는 클래스와 객체의 개념을 도입했습니다.
고급 및 저급 언어 기능을 캡슐화합니다. 따라서 중급 언어로 간주됩니다. 이전에는 C 언어의 모든 속성을 가지고 있기 때문에 "C with classes"라고 불렸습니다.
Java는 Sun Microsystems에서 개발한 프로그래밍 언어입니다. 소규모 소프트웨어 개발 팀이 이 언어를 개발했습니다. 그들은 1991년에 Java 언어를 시작한 Green Team으로 알려졌습니다.
C++ 언어는 AT &T Bell Laboratories의 Bjarne Stroustrup에 의해 개발되었습니다. Stroustrup은 C의 강력한 지지자이자 Simula67의 팬이었습니다. 그는 두 언어의 장점을 결합하기를 원했습니다. 그는 객체 지향 프로그래밍 기능을 지원하면서도 여전히 C의 힘을 유지하는 언어를 만드는 것을 목표로 하고 있었습니다. 그 결과 C++가 탄생했습니다.
Java 언어는 처음에 OAK라고 불렸습니다. 원래는 장치 및 셋톱 박스를 처리하기 위해 개발되었습니다. 오크는 큰 실패였습니다. 따라서 1995년 Sun은 이름을 Java로 변경하고 급성장하는 World Wide Web 개발 비즈니스를 활용하기 위해 언어를 수정했습니다.
나중에 2009년에 Oracle Corporation은 Sun Microsystems를 인수하고 두 가지 주요 Sun 소프트웨어 자산인 Java 및 Solaris의 소유권을 인수했습니다.
<중앙>
<그림> 그림>
매개변수 | C++ | 자바 |
---|---|---|
관계 | 클래스 이름과 파일 이름 사이에는 엄격한 관계가 없습니다. C++에서는 헤더 파일과 구현 파일이 특정 클래스에 사용됩니다. | 엄격한 관계가 적용됩니다. 예를 들어 PayRoll 클래스의 소스 코드는 PayRoll.java에 있어야 합니다. |
입력 메커니즘 | I/O 문은 in 및 cout을 사용합니다(예:in » x; cout« y; | I/O 입력 메커니즘은 한 번에 한 바이트(System.in)를 읽기 때문에 상당히 복잡합니다. 출력이 쉽습니다. System.out.println(x); |
컴파일러 및 인터프리터 | C++는 컴파일러만 지원 | Java는 컴파일러와 인터프리터를 모두 지원합니다. |
다른 언어와의 호환성 | 일부 예외적인 경우를 제외하고 C 소스 코드와 호환됩니다. | 이전 언어와의 역호환성이 없습니다. 구문은 C/C++의 영향을 받습니다. |
접근 제어 및 개체 보호 | 지속적인 보호가 가능한 유연한 모델 | 성가신 모델은 약한 캡슐화를 권장합니다. |
개념 | 어디에서나 한 번 컴파일하면 쓰기 | 한 번 쓰기는 어디에서나 실행 |
프로그래밍 유형 지원 | 절차적 프로그래밍과 객체 지향 프로그래밍을 모두 허용합니다. | 객체 지향 프로그래밍 모델을 지원합니다. |
인터페이스 | 네이티브 시스템 라이브러리에 대한 직접 호출을 허용합니다. | Java Native Interface 및 최근에는 Java Native Access를 통해서만 호출 |
메모리 관리 | 프로그래머가 액세스 가능 | 시스템 제어 |
루트 계층 구조 | C++에는 그러한 루트 계층이 없습니다. C++는 절차 및 객체 지향 프로그래밍을 모두 지원합니다. 따라서 하이브리드 언어라고 합니다. | Java는 순수한 객체 지향 프로그래밍 언어입니다. 그건. 이유 단일 루트 계층 구조를 따릅니다. |
최고의 기능 | C++는 객체 지향 기능을 지원합니다. 절차적 프로그래밍 기능입니다. | Java는 자동 가비지 수집을 지원합니다. C++처럼 소멸자를 지원하지 않습니다. |
Goto 문 | C++에는 goto 문이 있습니다. 하지만 goto 문을 사용하는 것은 이상적이지 않습니다. | 자바에는 goto 문이 없습니다. 키워드 got 및 const는 사용되지 않더라도 예약되어 있습니다. |
다중 상속 | C++는 다중 상속을 제공합니다. 가상 키워드는 다중 상속 중에 문제가 있는 경우 이를 해결하는 데 사용됩니다. | 자바는 다중 상속을 제공하지 않습니다. |
범위 분석 연산자 | C++에는 범위 확인 연산자 (: :) 가 있습니다. 클래스 외부에서 메소드를 정의하고 동일한 이름의 로컬 변수가 존재하는 범위 내에서 전역 변수에 액세스하는 데 사용됩니다. | 범위 확인 연산자 없음 (: :) 자바에서. 메서드 정의는 클래스 내에서 발생해야 하므로 범위 확인이 필요하지 않습니다. |
지원 방법 | C++는 메서드 오버로딩과 연산자 오버로딩을 모두 지원합니다. | Java는 메소드 오버로딩만 지원합니다. 연산자 오버로딩을 지원하지 않습니다. |
휴대성 | 플랫폼에 대해 소스를 다시 컴파일해야 합니다. 따라서 코드는 이식성이 없습니다. | 바이트코드 클래스는 플랫폼별 JVM으로 전송할 수 있습니다. |
유형 의미 | 기본 유형과 객체 유형 간에 일관성이 있습니다. | 프리미티브 및 객체 유형이 다릅니다. |
라이브러리 | 주로 낮은 수준의 기능 | 고수준 서비스를 위한 대규모 수업 |
런타임 오류 감지 | 프로그래머의 책임. | 시스템 책임. |
기능 및 데이터 | 함수와 데이터는 모든 클래스 외부에 존재할 수 있으며 전역 및 네임스페이스 범위를 사용할 수 있습니다. | 모든 기능과 데이터는 클래스 내에 존재합니다. 패키지 범위를 사용할 수 있습니다. |
플랫폼 | C++ 프로그램은 플랫폼에 따라 다릅니다. 특정 플랫폼에 맞게 컴파일해야 합니다. | 자바 프로그램은 플랫폼에 독립적입니다. Java 프로그램은 JVM(Java Virtual Machine)용으로 작성되었습니다. 다시 컴파일할 필요 없이 실행됩니다. |
런타임 오류 감지 | C++에서 오류를 확인하는 것은 프로그래머의 책임입니다. | 프로그램의 오류를 확인하는 것은 시스템의 책임입니다. |
포인터 | C++ 지원 포인터. | 자바는 포인터에 대해 제한된 지원만 제공합니다. |
구조 | 구조를 지원합니다. | 구조물을 지원하지 않습니다. |
노조 | C++는 공용체를 지원합니다. | 자바는 공용체를 지원하지 않습니다. |
객체 관리 | C++는 new 및 delete 키워드의 도움으로 수동 개체 관리를 지원합니다. | Java는 자동 가비지 수집에 크게 의존합니다. 소멸자를 지원하지 않습니다. |
java
용어 또는 전문 용어를 혼동하는 것은 전자 제품, 특히 트랜지스터와 저항에 대해 이야기할 때 일반적입니다. 그러나 문제는 이름을 어떻게 선택했는지에만 있는 것이 아닙니다. 초보자를 혼란스럽게 할 수 있는 기능입니다. 당사 웹 사이트에는 모든 PCB 구성 요소에 대한 포괄적인 목록이 있습니다. 그러나 혼란을 없애기 위해 이러한 트랜지스터와 저항의 차이점에 대해 자세히 설명해야 할 때라고 생각했습니다. 이 가이드를 마치면 다음 전자 프로젝트에서 이러한 구성 요소를 사용하는 방법과 함께 이러한 구성 요소의 기능을 완전히 이해하게 될
열경화성 플라스틱이란 무엇입니까? 열경화성 플라스틱은 가열되면 비가역적으로 단단해지는 폴리머입니다. 이러한 재료는 열경화성 또는 열경화성 폴리머라고도 합니다. 처음에 폴리머는 액체 또는 부드러운 고체입니다. 열은 폴리머 사슬 간의 가교를 증가시켜 플라스틱을 경화시키는 화학 반응에 에너지를 제공합니다. 열경화성 플라스틱은 가교된 분자의 긴 사슬로 구성됩니다. 그들은 매우 단단한 구조를 가지고 있습니다. 열경화성 플라스틱은 일단 가열되면 성형, 성형 및 압착하여 모양을 만들 수 있습니다. 한번 고정되면 영구적으로 고정되기 때문에