Ero C++ ja Java
Keskeinen ero C++ ja Java
- C++ kรคyttรครค vain kรครคntรคjรครค, kun taas Java kรคyttรครค sekรค kรครคntรคjรครค ettรค tulkkia.
- C++ tukee sekรค operaattorin ylikuormitusta ettรค menetelmรคn ylikuormitusta Java tukee vain menetelmรคn ylikuormitusta.
- C++ tukee manuaalista objektien hallintaa uusien ja poistettavien avainsanojen avulla Java on sisรครคnrakennettu automaattinen jรคtteenkerรคys.
- C++ tukee rakenteita, kun taas Java ei tue rakenteita.
- C++ tukee ammattiliittoja samalla Java ei tue ammattiliittoja.

Mikรค on C++ Kieli?
C++ on tietokoneohjelmointikieli, joka sisรคltรครค C-ohjelmointikielen ominaisuuden sekรค Simula67:n (first object Oriented Language). C++ esitteli luokan ja esineiden kรคsitteen.
Se kapseloi korkean ja matalan tason kielen ominaisuuksia. Joten se nรคhdรครคn keskitason kielenรค. Aiemmin sitรค kutsuttiin "C:ksi luokkien kanssa", koska sillรค oli kaikki C-kielen ominaisuudet.
Mikรค on Java Kieli?
Java on Sun Microsystemsin kehittรคmรค ohjelmointikieli. Pieni ohjelmistokehitystiimi kehitti tรคmรคn kielen. Heidรคt tunnettiin Vihreรคnรค tiiminรค, joka aloitti Java kieli vuonna 1991.
Historia C++
C++ kielen on kehittรคnyt Bjarne Stroustrup AT & T Bell Laboratoriesissa. Stroustrup oli C:n vahva kannattaja ja Simula67:n ihailija. Hรคn halusi yhdistรครค molempien kielten parhaat puolet. Hรคnen tavoitteenaan oli luoda kieli, joka tukee olio-ohjelmointiominaisuuksia ja sรคilyttรครค edelleen C:n voiman. Tรคmรค johti C++.
Historia Java
Java Kielen nimi oli alun perin OAK. Alun perin se kehitettiin laitteiden ja digisovittimien kรคsittelyyn. Oak oli valtava epรคonnistuminen. Niinpรค vuonna 1995 Sun muutti nimen Java ja muokkasi kieltรค hyรถdyntรครคkseen kasvavaa World Wide Web -kehitysliiketoimintaa.
Later, vuonna 2009, Oracle Corporation osti Sun Microsystemsin ja otti omistukseensa kaksi keskeistรค Sun-ohjelmistoomaisuutta: Java ja Solaris.
Ero C++ ja Java
| Parametri | C++ | Java |
|---|---|---|
| Yhteys | Ei tiukkaa suhdetta luokkanimien ja tiedostonimien vรคlillรค. sisรครคn C++, otsikkotiedostoja ja toteutustiedostoja kรคytetรครคn tietylle luokalle. | Tiukka suhde on pakollinen, esim. Luokan PayRoll lรคhdekoodin on oltava PayRoll.java. |
| Syรถttรถmekanismi | I/O-kรคskyt kรคyttรคvรคt in ja cout, esim. in ยป x; coutยซ y; | I/O-syรถttรถmekanismi on melko monimutkainen, koska se lukee tavu kerrallaan (System.in). Tulostus on helppoa, esim. System.out.println(x); |
| Kรครคntรคjรค ja tulkki | C++ vain tuki kรครคntรคjรค | Java tukee sekรค kรครคntรคjรครค ettรค tulkkia |
| Yhteensopivuus muiden kielten kanssa | Yhteensopiva C-lรคhdekoodin kanssa, lukuun ottamatta joitakin poikkeustapauksia. | Ei taaksepรคinyhteensopivuutta aiempien kielten kanssa. Syntaksiin vaikuttaa C/C++. |
| Kulunvalvonta ja esineiden suojaus | Joustava malli jatkuvalla suojauksella | Hankala malli kannustaa heikkoon kapselointiin. |
| Kรคsite | Kirjoita kerran kรครคnnรค missรค tahansa | Kirjoita kerran ajaa missรค tahansa kaikkialla |
| Tuki ohjelmointityypille | Sallii sekรค prosessuaalisen ohjelmoinnin ettรค olio-ohjelmoinnin. | Tuki olio-ohjelmointimalli. |
| liitรคntรค | Sallii suorat puhelut natiivijรคrjestelmรคkirjastoihin. | Soita vain kautta Java Alkuperรคinen kรคyttรถliittymรค ja รคskettรคin Java Native Access |
| Muistinhallinta | Pรครคsy ohjelmoijalle | Jรคrjestelmรคohjattu |
| Juurihierarkia | C++ sellaista juurihierarkiaa ei ole olemassa. C++ tukee sekรค proseduuri- ettรค olioohjelmointia; siksi sitรค kutsutaan hybridikieleksi. | Java on puhdas olio-ohjelmointikieli. Se on. Miksi Se seuraa yhden juuren hierarkiaa. |
| Parhaat ominaisuudet | C++ tukee oliopohjaisia โโominaisuuksia Proseduuriohjelmointiominaisuudet. | Java tukee automaattista jรคtteenkerรคystรค. Se ei tue tuhoajia kuten C++ ei. |
| Goto-lausunto | C++ on goto lausunto. Tosin ei ole ihanteellista kรคyttรครค goto-lausetta. | Java ei ole goto lausuntoa. Avainsanat got ja const on varattu, vaikka niitรค ei kรคytetรค. |
| Monta perintรถรค | C++ tarjota useita perintรถjรค. Avainsanaa virtual kรคytetรครคn ratkaisemaan ongelmia moniperinnรถn aikana, jos sellaisia โโon. | Java ei tarjoa moninkertaista perintรถรค. |
| Soveltamisalan tarkkuuden operaattori | C++ on laajuuden resoluutiooperaattori (: :) jota kรคytetรครคn mรครคrittรคmรครคn menetelmรค luokan ulkopuolella ja pรครคsemรครคn globaaliin muuttujaan alueella, jossa on olemassa myรถs paikallinen muuttuja samalla nimellรค. |
Ei mittausalueen resoluutiooperaattoria (: :) in Java. Metodimรครคritelmien on tapahduttava luokassa, joten laajuusselvitystรค ei tarvita. |
| Tukimenetelmรค | C++ tukee sekรค menetelmรคn ylikuormitusta ettรค operaattorin ylikuormitusta | Java tukee vain menetelmรคn ylikuormitusta. Se ei tue operaattorin ylikuormitusta. |
| siirrettรคvyys | Lรคhde on kรครคnnettรคvรค alustaa varten. joten koodi ei ole kannettava. | Tavukoodiluokat ovat siirrettรคvissรค alustakohtaisiin JVM:eihin. |
| Kirjoita semantiikka | Johdonmukainen primitiivisten ja objektityyppien vรคlillรค. | Eri primitiivisille ja objektityypeille. |
| kirjastot | Pรครคasiassa matalan tason toiminnallisuus | Massiiviset, korkean tason palvelut. |
| Suorituksenaikaisen virheen tunnistus | Ohjelmoijan vastuu. | Jรคrjestelmรคn vastuu. |
| Toiminnot ja tiedot | Toiminnot ja tiedot voivat olla minkรค tahansa luokan ulkopuolisia, kรคytettรคvissรค ovat globaalit ja nimitila-alueet. | Kaikki toiminnot ja tiedot ovat luokissa; paketin laajuus on saatavilla. |
| foorumi | C++ ohjelmat ovat alustariippuvaisia. Ne on kรครคnnettรคvรค tietylle alustalle. | Java ohjelmat ovat alustariippumattomia. Java ohjelmat on kirjoitettu Java Virtuaalikone (JVM). Se toimii ilman uudelleenkรครคntรคmistรค. |
| Suorituksenaikaisen virheen tunnistus | In C++, Ohjelmoijan vastuulla on tarkistaa virheet. | Jรคrjestelmรคn vastuulla on tarkistaa ohjelman virhe. |
| Osoitin | C++ tukiosoittimia. | Java tarjoaa vain rajoitetun tuen osoittimille. |
| Tuote mallit | Se tukee rakenteita. | Se ei tue rakenteita. |
| Ammattiliitot | C++ tukee ammattiliittoja. | Java ei tue ammattiliittoja. |
| Kohteen hallinta | C++ tukee manuaalista objektien hallintaa uusien ja poistettavien avainsanojen avulla. | Java on raskas riippuu automaattisesta jรคtteenkerรคyksestรค. Se ei tue tuhoajia. |
