logo

C++ vs Java

Det er mange forskjeller og likheter mellom C++ programmering språk og Java . En liste over de viktigste forskjellene mellom C++ og Java er gitt nedenfor:

Sammenligningsindeks C++Java
Plattformuavhengig C++ er plattformavhengig.Java er plattformuavhengig.
Hovedsakelig brukt til C++ brukes hovedsakelig til systemprogrammering.Java brukes hovedsakelig til applikasjonsprogrammering. Det er mye brukt i Windows-baserte, nettbaserte, bedrifts- og mobilapplikasjoner.
Designmål C++ ble designet for programmering av systemer og applikasjoner. Det var en forlengelse av C programmeringsspråk .Java ble designet og opprettet som en tolk for utskriftssystemer, men ble senere utvidet som en støttenettverksdatabehandling. Den ble designet for å være enkel å bruke og tilgjengelig for et bredere publikum.
Gå til C++ støtter goto-setningen.Java støtter ikke goto-setningen.
Multippel arv C++ støtter multippel arv.Java støtter ikke multippel arv gjennom klassen. Det kan oppnås ved å bruke grensesnitt i java .
Operatør overbelastning C++ støtter operatør overbelastning .Java støtter ikke operatøroverbelastning.
Pekere C++ støtter pekere. Du kan skrive et pekerprogram i C++.Java støtter peker internt. Du kan imidlertid ikke skrive pekerprogrammet i java. Det betyr at java har begrenset pekerstøtte i java.
Kompilator og tolk C++ bruker kun kompilator. C++ er kompilert og kjørt ved hjelp av kompilatoren som konverterer kildekoden til maskinkode, så C++ er plattformavhengig.Java bruker både kompilator og tolk. Java-kildekoden konverteres til bytekode på kompileringstidspunktet. Tolkeren kjører denne bytekoden under kjøring og produserer utdata. Java tolkes derfor er det plattformuavhengig.
Ring etter verdi og Ring etter referanse C++ støtter både call by value og call by reference.Java støtter kun anrop etter verdi. Det er ingen anrop ved referanse i java.
Struktur og forening C++ støtter strukturer og fagforeninger.Java støtter ikke strukturer og fagforeninger.
Trådstøtte C++ har ikke innebygd støtte for tråder. Den er avhengig av tredjepartsbiblioteker for trådstøtte.Java har innebygd tråd Brukerstøtte.
Dokumentasjonskommentar C++ støtter ikke dokumentasjonskommentarer.Java støtter dokumentasjonskommentar (/** ... */) for å lage dokumentasjon for java-kildekode.
Virtuelt nøkkelord C++ støtter virtuelt nøkkelord slik at vi kan bestemme om vi skal overstyre en funksjon eller ikke.Java har ikke noe virtuelt nøkkelord. Vi kan overstyre alle ikke-statiske metoder som standard. Med andre ord, ikke-statiske metoder er virtuelle som standard.
usignert høyreskift >>> C++ støtter ikke >>> operatør.Java støtter usignert høyreskift >>>-operator som fyller null øverst for de negative tallene. For positive tall fungerer det på samme måte som >> operator.
Arvetre C++ oppretter alltid et nytt arvetre.Java bruker alltid et enkelt arvetre fordi alle klasser er underordnede av Object-klassen i Java. Objektklassen er roten til arv tre i java.
Maskinvare C++ er nærmere maskinvare.Java er ikke så interaktivt med maskinvare.
Objekt orientert C++ er et objektorientert språk. Men i C-språket er et enkelt rothierarki ikke mulig.Java er også en objekt orientert Språk. Imidlertid er alt (unntatt grunnleggende typer) et objekt i Java. Det er et enkelt rothierarki da alt blir avledet fra java.lang.Object.

Merk

  • Java støtter ikke standardargumenter som C++.
  • Java støtter ikke header-filer som C++. Java bruker importnøkkelordet for å inkludere forskjellige klasser og metoder.

Eksempel på C++-program

Fil: main.cpp

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

Produksjon:

 Hello C++ Programming 

Eksempel på Java-program

Fil: Simple.java

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

Produksjon:

 Hello Java