java components java platform
Denne vejledning giver en detaljeret beskrivelse af Java som en platform og dens komponenter, dvs. JRE, JDK, Java Virtual Machine og forskellen mellem JRE og JDK:
Java er blevet beskrevet som et programmeringssprog såvel som platformen. I vores introduktionsvejledning diskuterede vi allerede, at en platform er et softwaremiljø, hvor vi kan udføre programmer eller applikationer.
I denne vejledning diskuterer vi Java som en platform. Vi vil også diskutere Java-platformskomponenter og se, hvordan de fungerer.
=> Læs gennem Easy Java Training Series.
virksomheder, der betaler dig for at teste deres produkter
Hvad du lærer:
Java-platform
Java-platform er en software eller samling af programmer, der hjælper os med at udføre applikationer skrevet på Java-programmeringssprog. En Java-platform består af en Java-kompilator, et sæt biblioteker og en eksekveringsmotor.
Java-platformen er uafhængig af ethvert bestemt operativsystem, der gør Java-programmeringssprog til et platformuafhængigt sprog.
Java-platformen består af følgende komponenter.
- Java-sprog
- Java Development Kit (JDK)
- Java Runtime Environment (JRE)
- Java-kompilatoren
- Java Virtual Machine (JVM)
Bortset fra ovenstående hovedkomponenter indeholder Java-platformen også affaldssamlere, et sæt biblioteker og andre yderligere komponenter og værktøjer, der kræves for effektivt at køre Java-applikationerne.
Lad os overveje følgende diagram, der viser forholdet mellem alle disse komponenter.
Så fra ovenstående diagram kan vi konkludere,
JRE = JVM + biblioteksklasser.
JDK = JRE + Developer-værktøjer.
Før vi tager hver af komponenterne op, skal vi først forstå udførelsesstrømmen af Java-programudførelse.
Følgende diagram viser strømmen af et Java-program.
bedste sted at se anime gratis
Så ovenstående diagram viser et simpelt eksekveringsflow for et Java-program. Et program skrevet på Java-sprog udarbejdes af Java-compileren (javac). I modsætning til andre sprogkompilatorer, der genererer maskinkode efter kompilering, genererer Javac-kompilatoren en klassefil bestående af bytekode.
Denne klassefil gives nu til Java Virtual Machine (JVM), der oversætter klassefilen til en objektfil, der indeholder maskinafhængig kode. Derefter udføres denne kode af maskinen.
Lad os diskutere hver af disse komponenter i detaljer.
Java-sprog
Java er et programmeringssprog, som Java-platformen bruger. Java er et objektorienteret programmeringssprog, hvis syntaks er afledt af C, og OOPS-funktioner er afledt af C ++. Det har sin syntaks, regler, format og programmeringsparadigme.
I denne serie lærer vi alle de vigtigste begreber i Java og programmering i detaljer.
Java-kompilatoren
Dette er en kompilator til Java-programmeringssprog, og dens funktion er at generere Java-klassefiler fra Java-kildekoden. Java-klassefilen indeholder en platformuafhængig Java-byte-kode.
Efter generering af klassefiler indlæser JVM disse klassefiler og fortolker enten byte-koden eller kompilerer den til maskinkode ved hjælp af Just-in-time (JIT) -compiler.
Java Virtual Machine (JVM)
JVM er centrum for Java-programmeringssprog og Java-platform. JVM konverterer bytekoden til maskinspecifik kode (også kendt som objektkode på andre programmeringssprog).
JVM leverer funktionaliteten til affaldsindsamling, hukommelsesstyring, sikkerhed osv. JVM er platformuafhængig, og vi kan tilpasse dens funktionalitet ved hjælp af en virtuel grænseflade, den giver, som ikke er maskinafhængig og også uafhængig af operativsystemet.
Denne platformuafhængighed af JVM giver os mulighed for at oprette Java-programmer på en maskine og udføre dem på en anden maskine (WORA - Skriv - En gang - Kør - Hvor som helst).
Følgende diagram illustrerer de forskellige dele af en JVM.
JVM er til stede på RAM. Når Java-programmet konverteres til en klassefil af Java-kompilatoren, skal det udføres.
Til udførelse bringes klassefilen på ram af klasselæsseren. Her er BYTE-koden verificeret for eventuelle sikkerhedsproblemer. Classloader er også ansvarlig for indlæsning, sammenkædning og initialisering af det program, der skal udføres.
JVM-hukommelsen vist i diagrammet ovenfor indeholder forskellige komponenter som vist, og de hjælper med at udføre programmet ved at holde pc-registre, der indeholder den aktuelle instruktion, der skal udføres, Heap, der indeholder variabler, arrays osv.
JVM-hukommelse indeholder også metodeområde og indfødt metodestak, som indeholder henholdsvis metodekode og modersmålsspecifikation. JVM-stakken indeholder forekomsten af programmet eller den aktuelle tråd. Hvis der er mere end en tråd, vil hver tråd have sin JVM-stak.
Når programmet er korrekt forbundet, sendes det videre til udførelsesmotoren. Udførelsesmotoren samarbejder med den indfødte metodegrænseflade og indfødte metodebiblioteker. Native method interface er en programmeringsramme, der giver Java-kode mulighed for at kalde biblioteker og native applikationer, der er en del af de native metodebiblioteker.
Derefter konverterer udførelsesmotoren Bytecode til Native maskinkode ved hjælp af just-in-time (JIT) compiler. Derefter udføres programmet af maskinen.
Bemærk: JIT eller Just-in-time compiler er en del af Java Virtual Machine (JVM). Det fortolker en del af Byte-koden, der har lignende funktionalitet på samme tid. Med andre ord konverterer den bytekoden til native maskinkode på samme programmeringsniveau. Dette er grunden til, at Java er kompileret såvel som et fortolket sprog.
Java Runtime Environment (JRE)
JRE er, som navnet antyder, det runtime-miljø, der kræves for at udføre Java-programmer og applikationer. JRE består af Java Virtual Machine (JVM) og binære filer og andre klasser til at udføre Java-programmer med succes.
JRE er en delmængde af JDK og indeholder ikke nogen udviklingsværktøjer som f.eks. Java-kompilator, debugger osv. Derfor, hvis dine Java-applikationer er udviklet andre steder, og du kun behøver at udføre dem på din maskine, så kan du installere JRE separat. Du skal installere JDK til dette.
Du har brug for en JRE installeret på din maskine, da det er minimumskravet til at køre Java-programmer på din maskine.
JRE inkluderer følgende komponenter.
- Kodebiblioteker, egenskabsindstillinger og ressourcefiler : Disse inkluderer filer som charsets.jar, rt.jar osv.
- DLL-filer : Brugt af Java hotspot-klient virtuel maskine og server virtuel maskine.
- Java-udvidelsesfiler : For eksempel, filer relateret til locale specifikation som localedata.jar
- Filer krævet til sikkerhedsstyring. For eksempel, java.policy, java.security
- Applet support klasser.
- True Type skrifttypefiler : Normalt krævet af platformen.
For at udføre ethvert program / program skrevet i Java skal du have JRE installeret på dit system. JRE er platformafhængig. Dette betyder, at du skal downloade og installere JRE, der er kompatibel med dine OS og arkitektur.
Java Development Kit (JDK)
Dette er kernekomponenten i ethvert Java-miljø. JDK indeholder JRE (Java Runtime Environment) sammen med Java compiler, Java debugger og andre kerneklasser. JDK bruges til Java-udvikling, da det leverer hele den eksekverbare og binære filer samt de nødvendige værktøjer til at kompilere, debugge et Java-program.
JDK er en platformsspecifik software, og derfor vil vi have separate JDK-installationsprogrammer til hvert operativsystem.
JDK indeholder følgende komponenter:
- jKonsol : Dette er en Java-overvågnings- og styringskonsol.
- krukke : Dette er arkiveren. Dette værktøj bruges til at pakke relaterede klassebiblioteker i en enkelt Jar-fil såvel som til at administrere Jar-filer.
- jarSigner : Dette værktøj bruges til signering og verifikation af krukke.
- javap: Dette er et værktøj til demontering af klassefiler.
- javaws : Java-webstartstarter til JNLP-applikationer.
- jhat : Java bunke analyseværktøj.
- jrunscript : Java kommandolinjeskriptskal.
- jstack : Hjælpeprogram, der bruges til at udskrive stakspor til Java-tråde.
- Javadoc : Dette genererer automatisk dokumentation fra kildekodekommentarer.
- appletviewer : Bruges til appletudførelse og fejlretning uden en webbrowser.
- apt : Værktøj til behandling af kommentarer.
- extCheck : Værktøj brugt til at kontrollere jar-filkonflikter.
- nøgleværktøj : Ved hjælp af dette værktøj kan du manipulere Keystore.
- politiværktøj : Dette er et værktøj til oprettelse og styring af politikker.
- xjc : Dette er en del af XML-bindende (JAXB) API, der accepterer XML-skema og genererer Java-klasser.
Således kan du se, at komponenterne i JDK er dem, der kræves af os fra et udviklingssynspunkt.
manuel test interview spørgsmål og svar i 3 år erfarne
Som vist i ovenstående diagram konverteres Java-kildekoden til bytekoder af Java-kompilator, som er en del af JDK. Derefter sendes denne bytekode videre til JVM (denne proces, der allerede er beskrevet ovenfor), og derfra går den til JRE, hvor koden udføres.
Efter at have set detaljerne om JDK og JRE, lad os nu diskutere forskellene mellem JRE og JDK.
JRE mod JDK
Lade være med | JRE | JDK |
---|---|---|
7 | Tager det kompilerede / fortolkede Java-program som input og genererer output. | Kompileret Java-kildeprogram og genererer en klassefil, som derefter gives til JVM. |
1 | JRE står for Java Runtime Environment. | JDK står for Java Development Kit. |
to | Mest brugt til udførelse af Java-programmer. | JDK bruges af udviklere til udvikling af Java-programmer. |
3 | Indeholder Java Virtual machine (JVM) bundtet inde i den. | Har ikke JVM. |
4 | JRE har ikke Java-compiler, så det kan ikke kompilere programmer. | JDK har javac compiler og er ansvarlig for kompilering af programmer. |
5 | Indeholder java-klassebibliotek, java-kommandoen og anden infrastruktur. | JDK indeholder værktøjer som Javadoc og arkiver, der bruges til at udvikle Java-applikationer. |
6 | JRE kan installeres som et enkeltstående program. | JDK er et separat installationsprogram og leveres sammen med JRE. |
Konklusion
I denne vejledning diskuterede vi detaljerne i Java Development Kit (JDK), der følger med Java Runtime Environment (JRE) og Java compiler. JRE indeholder igen Java Virtual Machine (JVM), som er ansvarlig for at konvertere bytekode genereret af Java-compiler til maskinspecifik kode.
Alle disse inklusive Java-sprog er komponenter i en overordnet enhed kaldet Java-platform, hvilket er et miljø, der hjælper os med at køre en Java-applikation. Vi diskuterede også den detaljerede arkitektur og arbejde med JVM samt udførelsen af et Java-program her.
=> Se på Java Beginners Guide her.
Anbefalet læsning
- Java Virtual Machine: Hvordan JVM hjælper med at køre Java-applikationer
- Java SWING Tutorial: Container, komponenter og håndtering af begivenheder
- Java-implementering: Oprettelse og udførelse af Java JAR-fil
- Adgang modifikatorer i Java - vejledning med eksempler
- Java Reflection Tutorial med eksempler
- Introduktion til Java-programmeringssprog - Videovejledning
- JAVA-vejledning til begyndere: 100+ praktiske Java-videovejledninger
- OOP Java: Introduktion til objektorienteret programmering i Java