logo

C++ kontra Java

Istnieje wiele różnic i podobieństw pomiędzy Programowanie w C++ język i Jawa . Poniżej znajduje się lista najważniejszych różnic pomiędzy C++ i Javą:

aktorka filmowa Rekha
Indeks porównawczy C++Jawa
Niezależny od platformy C++ jest zależny od platformy.Java jest niezależna od platformy.
Używany głównie do C++ jest używany głównie do programowania systemowego.Java jest używana głównie do programowania aplikacji. Jest szeroko stosowany w aplikacjach opartych na systemie Windows, aplikacjach internetowych, przedsiębiorstwach i aplikacjach mobilnych.
Cel projektu C++ został zaprojektowany z myślą o programowaniu systemów i aplikacji. Było to przedłużenie tzw Język programowania C .Java została zaprojektowana i stworzona jako interpreter dla systemów drukujących, ale później została rozszerzona jako wspierająca sieć komputerowa. Został zaprojektowany tak, aby był łatwy w obsłudze i dostępny dla szerszego grona odbiorców.
Iść do C++ obsługuje instrukcję goto.Java nie obsługuje instrukcji goto.
Dziedziczenie wielokrotne C++ obsługuje wielokrotne dziedziczenie.Java nie obsługuje wielokrotnego dziedziczenia poprzez klasę. Można to osiągnąć za pomocą interfejsy w Javie .
Przeciążenie operatora Obsługuje C++ przeciążenie operatora .Java nie obsługuje przeciążania operatorów.
Wskaźniki C++ obsługuje wskaźniki. Program wskaźnikowy można napisać w języku C++.Java obsługuje wskaźnik wewnętrznie. Jednakże nie można napisać programu wskaźnikowego w Javie. Oznacza to, że Java ma ograniczoną obsługę wskaźników w Javie.
Kompilator i interpreter C++ używa tylko kompilatora. C++ jest kompilowany i uruchamiany przy użyciu kompilatora, który konwertuje kod źródłowy na kod maszynowy, więc C++ jest zależne od platformy.Java używa zarówno kompilatora, jak i interpretera. Kod źródłowy Java jest konwertowany na kod bajtowy w czasie kompilacji. Interpreter wykonuje ten kod bajtowy w czasie wykonywania i generuje dane wyjściowe. Java jest interpretowana, dlatego jest niezależna od platformy.
Zadzwoń według wartości i zadzwoń przez referencję C++ obsługuje zarówno wywołanie przez wartość, jak i wywołanie przez referencję.Java obsługuje tylko wywoływanie według wartości. W Javie nie ma wywołania przez referencję.
Struktura i Unia C++ obsługuje struktury i związki.Java nie obsługuje struktur i związków.
Wsparcie wątków C++ nie ma wbudowanej obsługi wątków. Opiera się na bibliotekach innych firm do obsługi wątków.Java ma wbudowaną nitka wsparcie.
Komentarz do dokumentacji C++ nie obsługuje komentarzy do dokumentacji.Java obsługuje komentarze do dokumentacji (/** ... */) umożliwiające tworzenie dokumentacji dla kodu źródłowego Java.
Wirtualne słowo kluczowe C++ obsługuje wirtualne słowo kluczowe, dzięki czemu możemy zdecydować, czy zastąpić funkcję.Java nie ma wirtualnego słowa kluczowego. Domyślnie możemy zastąpić wszystkie metody niestatyczne. Innymi słowy, metody niestatyczne są domyślnie wirtualne.
bez znaku przesunięcie w prawo >>> C++ nie obsługuje operatora >>>.Java obsługuje operator przesunięcia w prawo bez znaku >>>, który wypełnia zero u góry dla liczb ujemnych. W przypadku liczb dodatnich działa tak samo jak operator >>.
Drzewo dziedziczenia C++ zawsze tworzy nowe drzewo dziedziczenia.Java zawsze używa pojedynczego drzewa dziedziczenia, ponieważ wszystkie klasy są dziećmi klasy Object w Javie. Klasa Object jest korzeniem klasy Object dziedzictwo drzewo w Javie.
Sprzęt komputerowy C++ jest bliżej sprzętu.Java nie jest tak interaktywna ze sprzętem.
Zorientowany obiektowo C++ jest językiem obiektowym. Jednak w języku C nie jest możliwa pojedyncza hierarchia główna.Java jest również zorientowany obiektowo język. Jednak wszystko (z wyjątkiem typów podstawowych) jest obiektem w Javie. Jest to pojedyncza hierarchia główna, ponieważ wszystko wywodzi się z Java.lang.Object.

Notatka

  • Java nie obsługuje argumentów domyślnych, takich jak C++.
  • Java nie obsługuje plików nagłówkowych, takich jak C++. Java używa słowa kluczowego import, aby uwzględnić różne klasy i metody.

Przykład programu w C++

Plik: main.cpp

 #include using namespace std; int main() { cout << 'Hello C++ Programming'; return 0; } 

Wyjście:

jvm w Javie
 Hello C++ Programming 

Przykład programu Java

Plik: Simple.java

 class Simple{ public static void main(String args[]){ System.out.println('Hello Java'); } } 

Wyjście:

 Hello Java