Johdatus Java

⚡ Älykäs yhteenveto

Johdatus Java selittää yleiskäyttöisen, luokkapohjaisen, olio-ohjelmointikielen, joka toimii myös laskenta-alustana. Tämä opetusohjelma kattaa Javahistoria, versiot, ominaisuudet, ydinkomponentit (JDK, JVM, JRE), alustaversiot ja tavukoodimekanismi, joka tekee Java aito kerran kirjoitettava, missä tahansa ajettava kieli.

  • ☕ Ydinmääritelmä: Java on yleiskäyttöinen, luokkapohjainen, olio-ohjelmointikieli ja ajonaikainen alusta, joka on suunniteltu siirrettävyyttä ja luotettavuutta silmällä pitäen.
  • 🧩 Kolme komponenttia: Java Alusta koostuu JDK:sta kehitystä varten, JVM:stä suoritusta varten ja JRE:stä ajonaikaista tukea varten.
  • 📜 Historian kohokohdat: Alun perin nimeltään OAK vuonna 1991, nimettiin uudelleen Java vuonna 1995, ja sen hankki Oracle Sun Microsystemsiltä vuonna 2009.
  • 🌐 Neljä versiota: Java SE, Java EE (nykyisin Jakarta EE), Java MINÄ ja JavaFX-kohdetietokoneet, yritysjärjestelmät, sulautetut laitteet ja monipuoliset asiakasohjelmat.
  • 🔁 Alustan riippumattomuus: Java lähdekoodi kääntyy tavukoodiksi, joka toimii millä tahansa JVM:llä, mikä mahdollistaa todellisen kertakirjoituksen ja missä tahansa suoritettavan siirrettävyyden käyttöjärjestelmien välillä.

Johdatus Java - Miten Java Virtuaalikone toimii

Mikä on Java?

Java on yleiskäyttöinen, luokkapohjainen, olio-ohjelmointikieli, joka on suunniteltu minimoimaan toteutusriippuvuudet. Se on myös laskenta-alusta sovelluskehitykseen. Java on nopea, turvallinen ja luotettava, minkä vuoksi se toimii ohjelmistojen voimanlähteenä kannettavissa tietokoneissa, datakeskuksissa, pelikonsoleissa, tieteellisissä supertietokoneissa, matkapuhelimissa ja sulautetuissa laitteissa. Monialustaisena, verkkokeskeisenä kielenä Java on edelleen yksi alan laajimmin käytetyistä ohjelmointikielistä, ja useimmat organisaatiot suosivat sitä kriittisten projektien rakentamisessa.

Mikä on Java Alusta?

Java foorumi on kokoelma ohjelmia, jotka auttavat kehittäjiä luomaan ja suorittamaan Java sovelluksia tehokkaasti. Se sisältää suoritusmoottorin, kääntäjän ja joukon kirjastoja sekä määritykset, jotka määrittelevät niiden yhteentoimivuuden. James Gosling kehitti Java Sun Microsystemsin alustalla ja Oracle Corporation hankki sen Sunin oston kautta vuonna 2009.

Tämä video esittelee Java foorumi ja selittää miksi Java on sekä alusta että ohjelmointikieli:

Napauta täältä jos video ei ole saatavilla.

Mikä on Java Käytetään?

Tässä on joitakin tärkeimmistä tosielämän sovelluksista Java:

  • Developing Android sovellukset.
  • Yritysohjelmistojen rakentaminen suurille organisaatioille.
  • Laajan valikoiman mobiililaitteita Java sovelluksissa.
  • Tieteellisen laskennan sovellusten suorittaminen.
  • Big data -analytiikan prosessien ajaminen.
  • Sulautettujen laitteistojen ohjelmointi.
  • Palvelinpuolen teknologiat, kuten Apache, JBoss, GlassFish ja Tomcat.

Historia Java Ohjelmointikieli

Tässä ovat tärkeimmät maamerkkit historiasta Java Kieli:

  • Java kielen nimi oli alun perin OAK.
  • Se kehitettiin alun perin kannettavien laitteiden ja digisovittimien käsittelyyn, kun taas OAK oli kaupallinen epäonnistuminen.
  • Vuonna 1995 Sun nimesi kielen uudelleen muotoon "Java” ja uudelleentarkastelun avulla se hyödynsi nopeasti kasvavaa World Wide Webiä.
  • Vuonna 2009, Oracle Corporation osti Sun Microsystemsin ja otti omistukseensa kolme keskeistä Sun-ohjelmistoomaisuutta: Java, MySQLja Solaris.

Java versiot

Tässä on lyhyt historia Java versiot ja niiden julkaisupäivät, päivitettynä viimeisimmän pitkäaikaisen tuen julkaisun myötä:

Java Versio Release Date
JDK Alpha ja Beta 1995
JDK 1.0 23rd tammikuu 1996
JDK 1.1 19th Helmikuu 1997
J2SE 1.2 8th joulukuu 1998
J2SE 1.3 8th toukokuuta 2000
J2SE 1.4 6th Helmikuu 2002
J2SE 5.0 30th Sep 2004
Java SE 6 11th joulukuu 2006
Java SE 7 28th heinäkuu 2011
Java SE 8 (LTS) 18th Mar 2014
Java SE 9 21st syyskuu 2017
Java SE 10 20th Mar 2018
Java SE 11 (LTS) 25th Sep 2018
Java SE 12 19th Mar 2019
Java SE 13 17th Sep 2019
Java SE 14 17th Mar 2020
Java SE 15 15th Sep 2020
Java SE 16 16th Mar 2021
Java SE 17 (LTS) 14th Sep 2021
Java SE 18 22. maaliskuuta 2022
Java SE 19 20th Sep 2022
Java SE 20 21st maaliskuu 2023
Java SE 21 (LTS) 19th Sep 2023
Java SE 22 19th Mar 2024
Java SE 23 17th Sep 2024
Java SE 24 18th Mar 2025
Java SE 25 (LTS) 16th Sep 2025

Java Ominaisuudet

Tässä on joitakin tärkeimmistä Java ominaisuuksia, jotka ovat pitäneet sen ajan tasalla lähes kolmen vuosikymmenen ajan:

  • Se on yksi helpoimmin opittavista olio-ohjelmointikielistä.
  • ”Kirjoita kerran, suorita missä tahansa” – yhdellä koneella käännetty koodi toimii lähes millä tahansa laskenta-alustalla.
  • Java on alustariippumaton tavukoodisuoritusmallinsa ansiosta.
  • Se on suunniteltu alusta alkaen oliopohjaisia ​​sovelluksia varten.
  • Se on monisäikeinen kieli, jossa on automaattinen muistinhallinta (roskienkeruu).
  • Se luotiin internetin hajautettua ympäristöä varten.
  • Se helpottaa hajautettua laskentaa verkkokeskeisen suunnittelunsa ansiosta.

Komponentit Java Ohjelmointikieli

A Java ohjelmoija kirjoittaa koodia ihmisen luettavalla kielellä, jota kutsutaan lähdekoodiCPU ei koskaan ymmärrä lähdekoodia suoraan – CPU:t ajavat vain konekielistä koodia, ja tuo konekielinen koodi vaihtelee CPU-perheiden välillä. Tämän kuilun kaventamiseksi Java alusta muuntaa lähdekoodin kannettavaan välimuotoon. Kaikki tämä tapahtuu kolmen ydinkomponentin sisällä: JDK:ssa, JVM:ssä ja JRE:ssä.

Java Kehityspaketti (JDK)

JDK on ohjelmistokehitysympäristö, jota käytetään sovelmien ja ohjelmien kehittämiseen. Java sovelluksia. JDK:n täysi muoto on Java Kehityspaketti. Java kehittäjät voivat käyttää sitä Windows, macOS, Solarisja Linux. JDK auttaa heitä koodaamaan ja suorittamaan Java ohjelmia. On mahdollista asentaa useampi kuin yksi JDK-versio samalle tietokoneelle.

Miksi käyttää JDK:ta?

  • JDK sisältää kirjoittamiseen tarvittavat työkalut Java ohjelmat ja JRE niiden suorittamiseen.
  • Se sisältää kääntäjän (javac), Java sovellusten käynnistysohjelma, AppletViewer ja vastaavat apuohjelmat.
  • Kääntäjä muuntaa koodin, joka on kirjoitettu Java tavukoodiksi.
  • Java sovellusten käynnistysohjelma avaa JRE:n, lataa tarvittavan luokan ja suorittaa sen päämenetelmän.

Java Virtuaalikone (JVM)

Java Virtuaalikone (JVM) on moottori, joka tarjoaa ajoympäristön Java koodia tai sovelluksia. Se muuntaa Java tavukoodi konekielelle. JVM on osa Java Ajonaikainen ympäristö (JRE). Muissa ohjelmointikielissä kääntäjä tuottaa konekoodia tietylle järjestelmälle. Kuitenkin Java kääntäjä tuottaa koodia virtuaalikoneelle, joka tunnetaan nimellä Java Virtuaalikone.

Miksi JVM?

  • JVM tarjoaa alustasta riippumattoman suoritustavan Java lähdekoodi.
  • Siinä on lukuisia kirjastoja, työkaluja ja kehyksiä saatavilla suoraan pakkauksesta.
  • Kun olet koonnut Java ohjelmaa voi käyttää millä tahansa alustalla, mikä säästää merkittävästi aikaa.
  • JVM toimitetaan JIT (Just-In-Time) -kääntäjällä, joka muuntaa tavukoodin matalan tason konekielelle ajonaikana, mikä usein tekee siitä nopeamman kuin tulkittu sovellus.

Java Runtime Environment (JRE)

JRE on ohjelmisto, joka on suunniteltu muiden ohjelmistojen suorittamiseen. Se sisältää luokkakirjastot, latausluokan ja JVM:n. Yksinkertaisesti sanottuna, jos haluat suorittaa vain Java ohjelman kehittämiseen (etkä sellaisen kehittämiseen), tarvitset JRE:n täyden JDK:n sijaan.

Miksi käyttää JRE:tä?

  • JRE sisältää luokkakirjastoja, JVM:n ja muita tukitiedostoja. Se ei sisällä kehitystyökaluja, kuten virheenkorjaajaa tai kääntäjää.
  • Se käyttää tärkeitä pakettiluokkia, mukaan lukien math, swing, util, lang, awtja ajonaikaisia ​​kirjastoja.
  • Jos pitää juosta Java sovelmia tai sovelluksia, JRE:n on oltava asennettuna järjestelmääsi.

Erilaisia Java Alustat

On neljä erillistä Java ohjelmointikieliympäristöt, joista jokainen on viritetty eri käyttöönottokohteeseen:

1. Java Alusta, Standard Edition (Java SE): Java SE:n API tarjoaa Java ohjelmointikielen ydintoiminnallisuus. Se määrittelee kaiken perustyypeistä ja objekteista korkean tason luokkiin, joita käytetään verkottumiseen, tietoturvaan, tietokannan käyttöön, graafisen käyttöliittymän (GUI) kehittämiseen ja XML-jäsentämiseen.

2. Java Alusta, Enterprise Edition (Jakarta EE, aiemmin Java EE): Jakarta EE -alusta tarjoaa API:n ja suoritusaikaisen ympäristön kehitystyöhönping ja erittäin skaalautuvien, laaja-alaisten, monitasoisten, luotettavien ja turvallisten verkkosovellusten suorittaminen. Oracle siirsi alustan Eclipse Foundation vuonna 2017, joka muutti sen nimeksi Jakarta EE.

3. Java Alusta, Micro Edition (Java MINULLE): Java ME-alusta tarjoaa API:n ja pienikokoisen virtuaalikoneen suoritusta varten Java sovelluksia pienissä laitteissa, kuten peruspuhelimissa ja sulautetuissa ohjaimissa.

4. JavaFX: JavaFX on kehitysalustaping rikkaat internet-sovellukset kevyen käyttöliittymärajapinnan avulla. Se käyttää laitteistokiihdytettyjä grafiikka- ja mediamoottoreita, jotka auttavat Java Hyödynnä tehokkaampia asiakasohjelmia, modernia ulkoasua ja käyttökokemusta sekä korkean tason API-rajapintoja verkkoon yhdistettyihin tietolähteisiin yhteyden muodostamiseen.

Ymmärtää Java ohjelmointikielellä meidän on tarkasteltava uudelleen joitakin peruskäsitteitä siitä, miten tietokoneohjelma suorittaa komentoja ja toimintoja.

Mikä on PC?

Tietokone on elektroninen laite, joka pystyy suorittamaan laskutoimituksia. Se koostuu näytöstä, näppäimistöstä, hiirestä ja muistista tiedon tallentamiseksi. Tärkein komponentti on kuitenkin PROSESSORI. Prosessori suorittaa kaiken tietokoneen ajattelun – mutta miten se oikeastaan ​​tekee tuon ajattelemisen? Miten se ymmärtää tekstiä, kuvia ja videoita?

Mikä on PC - keskeiset komponentit
Mikä on PC?

Mikä on Assembly Kieli?

Tietokone on elektroninen laite, joten se ymmärtää vain elektronisia signaaleja – binäärisignaaleja. 5 voltin elektroninen signaali voi edustaa binäärilukua 1, kun taas 0 volttia voi edustaa binäärilukua 0. Tietokonettasi pommitetaan jatkuvasti näillä signaaleilla.

Tietokoneen käsittelemät binäärisignaalit

Kahdeksan bittiä näistä signaaleista on ryhmitelty yhteen tekstin, numeroiden ja symbolien tulkitsemiseksi.

Kahdeksanbittinen grouping tekstille ja symboleille

Esimerkiksi tietokone tunnistaa #-merkin muodossa 10101010. Vastaavasti "yhteenlasku"-funktion mallia edustaa luku 10000011.

Tietokoneohjeiden binääriesitys

Tätä kutsutaan 8-bittiseksi laskennaksi. Nykyaikaiset prosessorit pystyvät dekoodaamaan 64-bittisiä käskyjä kerrallaan. Mitä tekemistä tällä käsitteellä on? JavaKäydään läpi esimerkki.

Oletetaan, että haluat käskeä tietokonetta laskemaan yhteen kaksi lukua (1 + 2), jotka esitetään binääriluvuilla (10000011). Miten viestit tämän tietokoneellesi? Käytät assembly-kieltä koodisi suorittamiseen.

"Assembly Kieli on ohjelmistokehityskielten alkeellisin muoto."

Annat komentoja seuraavassa muodossa. Kahden luvun yhteenlasku assembly-kielellä näyttäisi tältä:

Assembly kielen kahden numeron yhteenlasku -esimerkki

  • Tallenna numero 1 muistipaikkaan A.
  • Tallenna numero 2 muistipaikkaan B.
  • Laske yhteen sijaintien A ja B sisältö.
  • Säilytä tulos.

1950-luvulla, kun tietokoneet olivat valtavia ja tehoa ahneita, assembly-koodi muunnettiin vastaavaksi konekieliseksi koodiksi (ykköset ja nollat) käyttämällä map-funktiota.ping arkkeja. Koodi rei'itettiin sitten konekorteille ja syötettiin tietokoneelle. Tietokone luki nämä koodit ja suoritti ohjelman. Tämä oli pitkä prosessi – kunnes KOKOONPANIJA saapui automatisoimaan muunnoksen.

Mitä ovat Assembler ja Compiler?

Teknologian kehittyessä keksittiin I/O-laitteita. Voit kirjoittaa ohjelmasi suoraan tietokoneelle käyttämällä ASSEMBLER-komentoa, joka muuntaa sen vastaavaksi konekieliseksi koodiksi (110001…) ja syöttää sen prosessorille. Palatakseni 1 + 2 -esimerkkiimme, assembler muuntaa assembly-koodin konekieliseksi koodiksi tulosteena.

Assembler muuntaa assembly-koodin konekielelle

Assemblyn lisäksi sinun on myös kutsuttava käyttöjärjestelmän tarjoamia funktioita tulosteen näyttämiseksi.

Pelkkä assembler ei riitä; se tarvitsee myös KÄÄNTÄJÄN pakkaamaan pitkän lähdekoodin pienemmiksi, optimoiduiksi paloiksi. Korkeamman tason ohjelmistokehityskielillä koko yllä oleva assembler-koodinpätkä kutistuu yhdelle riville, kuten printf("%d", 1 + 2)Kääntäjä muuntaa sinun C-kieli koodi assembly-koodiksi; assembler muuntaa sen sitten konekieliseksi koodiksi transmitprosessorille. Yleisin tietokoneissa käytetty prosessori on Intel-prosessori.

Kääntäjä- ja assembler-putkisto

Nykyaikaiset kääntäjät usein niputtavat assemblerin, jotta ne voivat muuntaa korkeamman tason kielikoodia suoraan konekieleksi.

Oletetaan nyt, Windows toimii Intel-prosessorilla – käyttöjärjestelmän ja prosessorin yhdistelmää kutsutaan ALUSTAKSI. Yleisin alusta on Windows Intel-alustalla, joka tunnetaan myös nimellä Wintel. Muita suosittuja alustoja ovat AMD, Linux, PowerPC ja macOS.

Prosessorin vaihtuessa myös kokoamisohjeet muuttuvat. Esimerkiksi:

  • Intelin "add"-käskyä voidaan AMD:llä kutsua nimellä ADDITION.
  • Tai “Math ADD” PowerPC:llä.

Ja käyttöjärjestelmän muutoksen myötä myös käyttöjärjestelmätason puheluiden taso ja luonne muuttuvat.

Kehittäjänä haluat ohjelmistosi toimivan kaikilla alustoilla maksimoidaksesi tavoittavuuden. Tämä tarkoittaa, että sinun on ostettava erilliset kääntäjät, jotka muuntavat printf komennon jokaisen kohteen natiiviin konekoodiin.

Useita alustoja kääntävät

Kääntäjät ovat kalliita, ja käyttöjärjestelmien välillä on aina yhteensopivuusongelmien riski. Erillisen kääntäjän ostaminen ja asentaminen jokaiselle käyttöjärjestelmä-prosessori-yhdistelmälle ei ole käytännöllistä. Joten mikä on vaihtoehto? Kirjoita Java Kieli.

Miten Java Virtuaalikone toimii?

Käyttämällä Java Virtuaalikone, tämä ongelma voidaan ratkaista. Mutta miten se toimii eri prosessoreilla ja käyttöjärjestelmillä? Käydään se läpi askel askeleelta.

Miten Java Virtuaalikone toimii askel askeleelta

Vaihe 1) Kahden luvun yhteenlaskun näyttävä koodi — System.out.println(1+2) — tallennetaan nimellä .java tiedosto.

Vaihe 2) Käyttäen Java kääntäjä (javac), koodi muunnetaan välikoodiksi, jota kutsutaan tavukoodiTuloste on .luokka tiedosto.

Vaihe 3) Tätä tavukoodia ei ymmärrä mikään fyysinen alusta, ainoastaan ​​virtuaalinen alusta nimeltä Java Virtuaalikone.

Vaihe 4) JVM sijaitsee käyttöjärjestelmäsi RAM-muistissa. Kun JVM:lle syötetään tämä tavukoodi, se tunnistaa alustan, jolla se toimii, ja muuntaa tavukoodin natiiviksi konekoodiksi lennossa.

Kun työskentelet tietokoneellasi tai selailet verkkoa, aina kun näet Java-aiheisten kuvakkeiden avulla voit olla varma, että JVM on ladattu RAM-muistiisi. Mikä tekee siitä Java attracon, että käännettyä koodia voidaan ajaa paitsi kaikilla PC-alustoilla, myös matkapuhelimissa ja muissa elektronisissa laitteissa, jotka tukevat Java.

"Java on sekä ohjelmointikieli että alusta.”

Miten on Java Alustasta riippumaton?

Toisin kuin C-kääntäjä, Java kääntäjä ei tuota natiivia suoritettavaa koodia tietylle koneelle. Sen sijaan Java tuottaa ainutlaatuisen välimuotoisen nimisen tavukoodiTavukoodi suoritetaan JVM-spesifikaation sääntöjen mukaisesti, minkä vuoksi Java on alustasta riippumaton kieli.

Tavukoodi on ymmärrettävissä millä tahansa JVM:llä, joka on asennettu mihin tahansa käyttöjärjestelmään. Lyhyesti sanottuna, Java lähdekoodi voi toimia kaikissa moderneissa käyttöjärjestelmissä ilman uudelleenkääntämistä, mikä on perusta Javan lupaus "kirjoita kerran, juokse minne tahansa".

UKK

JDK on kehityspaketti, joka sisältää kääntäjän ja työkaluja. JRE on ajonaikainen ympäristö, joka sisältää JVM:n ja luokkakirjastot, joita tarvitaan suorittamiseen. Java ohjelmia. JVM on JRE:n sisällä oleva moottori, joka muuntaa tavukoodin natiiviksi konekieleksi ajonaikana.

Kyllä. Java on edelleen erittäin merkityksellinen yritysjärjestelmille, Android sovellukset, rahoitusalustat, big data ja mikropalvelut. Nykyaikaiset julkaisut, kuten Java 21 ja Java 25 LTS lisää tietueita, virtuaalisäikeitä, kuvioiden yhteensovitusta ja parantaa suorituskykyä Java kilpailukykyinen.

Aloittelijoiden tulisi asentaa Long-Term Support (LTS) -julkaisu. Java Syyskuussa 2025 julkaistu SE 25 on uusin LTS-versio, jossa on Java 21 ja Java 17 on edelleen laajalti käytössä. LTS-versiot saavat laajennetut tietoturvapäivitykset ja vakaan tuen toimittajilta.

Tekoälyä käytetään Java yritysten koneoppimiseen, petosten havaitsemiseen, suosittelukoneisiin ja chatbotteihin. Kirjastot, kuten DJL, Deeplearning4j ja Tribuo, tuovat syväoppimista JVM:ään, kun taas tekoälykoodausavustajat nopeuttavat Java refaktorointi ja yksikkötestien generointi.

Kyllä. Tekoälykoodausavustajat selittävät Java syntaksia, harjoitustehtävien luomista, virheiden detangointia ja koodin tarkastelua reaaliajassa. Aloittelijat hyötyvät interaktiivisesta palautteesta, joka korostaa oliopohjaisen suunnittelun parhaita käytäntöjä, JVM-käyttäytymistä ja yleisiä virheitä, joita perinteiset oppikirjat harvoin tuovat esiin.

Tiivistä tämä viesti seuraavasti: