java components java platform
Denne opplæringen gir en detaljert beskrivelse av Java som en plattform og dens komponenter, dvs. JRE, JDK, Java Virtual Machine og forskjellen mellom JRE og JDK:
Java har blitt beskrevet som et programmeringsspråk så vel som plattformen. I vår innledende veiledning diskuterte vi allerede at en plattform er et programvaremiljø der vi kan utføre programmer eller applikasjoner.
I denne opplæringen vil vi diskutere Java, som en plattform. Vi vil også diskutere Java-plattformkomponenter og se hvordan de fungerer.
=> Les gjennom Easy Java Training Series.
Hva du vil lære:
hva er betatesting og hvordan brukes det?
Java-plattform
Java-plattformen er en programvare eller samling av programmer som hjelper oss å utføre applikasjoner skrevet på Java-programmeringsspråk. En Java-plattform består av en Java-kompilator, et sett med biblioteker og en utførelsesmotor.
Java-plattformen er uavhengig av et bestemt operativsystem som gjør Java-programmeringsspråk til et plattformuavhengig språk.
Java-plattformen består av følgende komponenter.
- Java-språk
- Java Development Kit (JDK)
- Java Runtime Environment (JRE)
- Java Compiler
- Java Virtual Machine (JVM)
Bortsett fra de ovennevnte hovedkomponentene, inneholder Java-plattformen også søppeloppsamlere, et sett med biblioteker og andre tilleggskomponenter og verktøy som kreves for å kjøre Java-applikasjonene effektivt.
La oss se på følgende diagram som viser forholdet mellom alle disse komponentene.
Så fra diagrammet ovenfor kan vi konkludere med at,
JRE = JVM + bibliotekstimer.
JDK = JRE + utviklerverktøy.
Før vi tar opp hver av komponentene, må vi først forstå utførelsesflyten for Java-programutførelse.
Følgende diagram viser flyten til et Java-program.
Så diagrammet ovenfor viser en enkel utførelsesflyt for et Java-program. Et program skrevet på Java-språk er samlet av Java-kompilatoren (javac). I motsetning til andre språk kompilatorer som genererer maskinkode etter kompilering, genererer Javac kompilatoren en klassefil som består av byte kode.
Nå blir denne klassefilen gitt til Java Virtual Machine (JVM) som oversetter klassefilen til en objektfil som inneholder maskinavhengig kode. Deretter kjøres denne koden av maskinen.
hvordan åpne 7z på mac
La oss diskutere hver av disse komponentene i detalj.
Java-språk
Java er et programmeringsspråk som Java-plattformen bruker. Java er et objektorientert programmeringsspråk hvis syntaks er avledet fra C og OOPS-funksjoner er hentet fra C ++. Den har sin syntaks, regler, format og programmeringsparadigme.
I denne serien vil vi lære alle hovedkonseptene i Java og programmering i detalj.
Java Compiler
Dette er en kompilator for Java-programmeringsspråk, og dens funksjon er å generere Java-klassefiler fra Java-kildekoden. Java-klassefilen inneholder en plattformuavhengig Java-byte-kode.
Etter å ha generert klassefiler, laster JVM disse klassefilene og tolker enten byte-koden eller kompilerer den til maskinkode ved hjelp av Just-in-time (JIT) kompilator.
Java Virtual Machine (JVM)
JVM er sentrum for Java-programmeringsspråk og Java-plattform. JVM konverterer bytekoden til maskinspesifikk kode (også kjent som objektkode på andre programmeringsspråk).
JVM gir funksjonaliteten til søppelinnsamling, minnestyring, sikkerhet osv. JVM er plattformuavhengig, og vi kan tilpasse funksjonaliteten ved hjelp av et virtuelt grensesnitt det gir, som ikke er maskinavhengig og også uavhengig av operativsystemet.
Denne plattformuavhengigheten til JVM lar oss lage Java-programmer på en maskin og utføre dem på en annen maskin (WORA - Skriv - En gang - Kjør - Hvor som helst).
Følgende diagram illustrerer de forskjellige delene av en JVM.
JVM er tilstede på RAM-en. Når Java-programmet konverteres til en klassefil av Java-kompilatoren, må det utføres.
For kjøring blir klassefilen brakt på ram av klasselaster. Her bekreftes BYTE-koden for eventuelle sikkerhetsproblemer. Classloader er også ansvarlig for lasting, kobling og initialisering av programmet som skal utføres.
JVM-minnet vist i diagrammet ovenfor inneholder forskjellige komponenter som vist, og de hjelper i utførelsen av programmet ved å holde PC-registre som inneholder gjeldende instruksjoner som skal utføres, Heap som inneholder variabler, matriser, etc.
JVM-minne inneholder også metodeareal og native metode stack som inneholder henholdsvis metodekode og morsmålsspesifikasjon. JVM-stakken inneholder forekomsten av programmet eller den gjeldende tråden. Hvis det er mer enn en tråd enn hver tråd vil ha sin JVM-stabel.
Når programmet er riktig koblet, sendes det videre til kjøringsmotoren. Utførelsesmotoren samarbeider med grensesnittet for innfødte metoder og biblioteker for innfødte metoder. Grensesnitt for innfødt metode er et programmeringsrammeverk som lar Java-kode ringe biblioteker og innfødte applikasjoner som er en del av de innfødte metodebibliotekene.
Deretter konverterer kjøringsmotoren Bytecode til Native maskinkode ved bruk av just-in-time (JIT) kompilator. Deretter kjøres programmet av maskinen.
Merk: JIT eller Just-in-time kompilator er en del av Java Virtual Machine (JVM). Den tolker en del av Byte-koden som har lignende funksjonalitet samtidig. Med andre ord konverterer den byte-koden til naturlig maskinkode på samme programmeringsnivå. Dette er grunnen til at Java er samlet, så vel som et tolket språk.
Java Runtime Environment (JRE)
JRE, som navnet antyder, er kjøretidsmiljøet som kreves for å kjøre Java-programmer og applikasjoner. JRE består av Java Virtual Machine (JVM) og binærfiler og andre klasser for å kunne utføre Java-programmer.
JRE er et delsett av JDK og inneholder ingen utviklingsverktøy som Java-kompilator, feilsøkingsprogram osv. Derfor, hvis Java-applikasjonene dine er utviklet andre steder, og du bare trenger å utføre dem på maskinen din, kan du installere JRE separat. Du trenger å installere JDK for dette.
Du trenger en JRE installert på maskinen din, da det er minimumskravet til å kjøre Java-programmer på maskinen din.
JRE inkluderer følgende komponenter.
- Kodebiblioteker, eiendomsinnstillinger og ressursfiler : Disse inkluderer filer som charsets.jar, rt.jar, etc.
- DLL-filer : Brukt av Java hotspot client virtual machine og server virtual machine.
- Java-utvidelsesfiler : For eksempel, filer relatert til stedsspesifikasjon som localedata.jar
- Filer kreves for sikkerhetsstyring. For eksempel, java.policy, java.security
- Applet-støtteklasser.
- True Type fontfiler : Vanligvis kreves av plattformen.
For å kunne utføre applikasjoner / programmer skrevet i Java, trenger du JRE installert på systemet ditt. JRE er plattformavhengig. Dette betyr at du må laste ned og installere JRE som er kompatibel med OS og arkitektur.
Java Development Kit (JDK)
Dette er kjernekomponenten i ethvert Java-miljø. JDK inneholder JRE (Java Runtime Environment) sammen med Java-kompilator, Java-feilsøking og andre kjerneklasser. JDK brukes til Java-utvikling, da det gir hele kjørbare filer og binærfiler, samt verktøy som kreves for å kompilere, feilsøke et Java-program.
JDK er en plattformspesifikk programvare, og dermed vil vi ha separate JDK-installatører for hvert operativsystem.
JDK inneholder følgende komponenter:
- jKonsoll : Dette er en Java-overvåking og administrasjonskonsoll.
- krukke : Dette er arkivaren. Dette verktøyet brukes til å pakke relaterte klassebiblioteker i en enkelt Jar-fil, samt for å administrere Jar-filer.
- jarSigner : Dette verktøyet brukes til å signere og verifisere krukke.
- javap: Dette er et verktøy for demontering av klassefiler.
- javaws : Java web start launcher for JNLP applikasjoner.
- jhat : Java heap analyseverktøy.
- jrunscript : Java kommandolinjeskriptskall.
- jstack : Verktøy som brukes til å skrive ut stakkspor for Java-tråder.
- Javadoc : Dette genererer automatisk dokumentasjon fra kildekoden.
- appletviewer : Brukes til kjøring av applet og feilsøking uten nettleser.
- apt : Behandlingsverktøy for merknader.
- extCheck : Verktøy som brukes til å sjekke konflikter i jar-filer.
- nøkkelverktøy : Ved å bruke dette verktøyet kan du manipulere Keystore.
- politiverktøy : Dette er et verktøy for policyopprettelse og styring.
- xjc : Dette er en del av XML-binding (JAXB) API som godtar XML-skjema og genererer Java-klasser.
Dermed kan du se at komponentene i JDK er de som kreves av oss fra et utviklingssynspunkt.
hva er sikkerhetsnøkkelen på en ruter
Som vist i diagrammet ovenfor konverteres Java-kildekoden til byte-koder av Java-kompilator som er en del av JDK. Deretter sendes denne byte-koden videre til JVM (denne prosessen er allerede beskrevet ovenfor) og derfra går den til JRE hvor koden utføres.
Etter å ha sett detaljene om JDK og JRE, la oss nå diskutere forskjellene mellom JRE og JDK.
JRE mot JDK
Ikke | JRE | JDK |
---|---|---|
7 | Tar det kompilerte / tolket Java-programmet som input og genererer output. | Kompilert Java-kildeprogram og genererer en klassefil som deretter blir gitt til JVM. |
1 | JRE står for Java Runtime Environment. | JDK står for Java Development Kit. |
to | Brukes mest for utførelse av Java-programmer. | JDK brukes av utviklere for å utvikle Java-programmer. |
3 | Inneholder Java Virtual machine (JVM) bundet i den. | Har ikke JVM. |
4 | JRE har ikke Java-kompilator, så kan ikke kompilere programmer. | JDK har javac-kompilator og er ansvarlig for å kompilere programmer. |
5 | Inneholder Java-klassebiblioteket, Java-kommandoen og annen infrastruktur. | JDK inneholder verktøy som Javadoc og arkiver som brukes til å utvikle Java-applikasjoner. |
6 | JRE kan installeres som et frittstående program. | JDK er et eget installasjonsprogram og følger med JRE. |
Konklusjon
I denne opplæringen diskuterte vi detaljene i Java Development Kit (JDK) som følger med Java Runtime Environment (JRE) og Java compiler. JRE inneholder igjen Java Virtual Machine (JVM) som er ansvarlig for å konvertere byte-kode generert av Java-kompilator til maskinspesifikk kode.
Alle disse inkludert Java-språk er komponenter i en overordnet enhet som kalles Java-plattform, som er et miljø som hjelper oss å kjøre et Java-program. Vi diskuterte også den detaljerte arkitekturen og arbeidet med JVM, samt utførelsen av et Java-program her.
=> Ta en titt på Java Beginners Guide her.
Anbefalt lesing
- Java Virtual Machine: Hvordan JVM hjelper med å kjøre Java-applikasjoner
- Java SWING Tutorial: Container, Components and Event Handling
- Java-distribusjon: Opprettelse og utføring av Java JAR-fil
- Få tilgang til modifikatorer i Java - opplæring med eksempler
- Java Reflection Tutorial med eksempler
- Introduksjon til Java Programming Language - Video Tutorial
- JAVA-opplæring for nybegynnere: 100+ praktiske Java-videoveiledninger
- OOP Java: Introduksjon til objektorientert programmering i Java