Introduktion til Java
⚡ Smart opsummering
Introduktion til Java forklarer et generelt, klassebaseret, objektorienteret programmeringssprog, der også fungerer som en computerplatform. Denne vejledning dækker Javas historie, versioner, funktioner, kernekomponenter (JDK, JVM, JRE), platformudgaver og bytecode-mekanismen, der gør Java et ægte skriv-én-gang, kør-hvor som helst sprog.

Hvad er Java?
Java er et generelt, klassebaseret, objektorienteret programmeringssprog designet til minimale implementeringsafhængigheder. Det er også en computerplatform til applikationsudvikling. Java er hurtig, sikker og pålidelig, hvilket er grunden til, at den driver software på bærbare computere, datacentre, spillekonsoller, videnskabelige supercomputere, mobiltelefoner og indlejrede enheder. Som et multiplatform, netværkscentreret sprog, Java er fortsat et af de mest udbredte programmeringssprog i branchen og foretrækkes af de fleste organisationer til at bygge missionskritiske projekter.
Hvad er det Java Platform?
Java perron er en samling af programmer, der hjælper udviklere med at oprette og køre Java applikationer effektivt. Den samler en udførelsesmotor, en compiler og et sæt biblioteker, sammen med de specifikationer, der definerer, hvordan de fungerer sammen. James Gosling udviklede Java platform hos Sun Microsystems, og Oracle Corporation erhvervede det gennem Sun-opkøbet i 2009.
Denne video introducerer Java perron og forklarer hvorfor Java er både en platform og et programmeringssprog:
Klik link. hvis videoen ikke er tilgængelig.
Hvad er Java Anvendes til?
Her er nogle af de vigtigste anvendelser i den virkelige verden af Java:
- Udviklingping Android apps.
- Udvikling af virksomhedssoftware til store organisationer.
- Driver en bred vifte af mobile enheder Java applikationer.
- Kørsel af videnskabelige databehandlingsapplikationer.
- Driver pipelines for big data-analyse.
- Programmering af indlejrede hardwareenheder.
- Server-side teknologier som Apache, JBoss, GlassFish og Tomcat.
Historien om Java Programmeringssprog
Her er de vigtige milepæle fra historien om Java Sprog:
- Java sprog blev oprindeligt kaldt OAK.
- Det blev oprindeligt udviklet til håndtering af bærbare enheder og set-top-bokse, hvor OAK var en kommerciel fiasko.
- I 1995 omdøbte Sun sproget til “Java" og omfokuserede det for at drage fordel af det hurtigt voksende World Wide Web.
- I 2009, blev Oracle Corporation købte Sun Microsystems og tog ejerskabet af tre centrale Sun-softwareaktiver: Java, MySQLog Solaris.
Java versioner
Her er en kort historie om Java versioner og deres udgivelsesdatoer, opdateret gennem den seneste langsigtede supportudgivelse:
| Java Version | Slip Dato |
|---|---|
| JDK Alpha og Beta | 1995 |
| JDK 1.0 | 23rd Jan 1996 |
| JDK 1.1 | 19th februar 1997 |
| J2SE 1.2 | 8th december 1998 |
| J2SE 1.3 | 8th May 2000 |
| J2SE 1.4 | 6th februar 2002 |
| J2SE 5.0 | 30th september 2004 |
| Java SE 6 | 11th december 2006 |
| Java SE 7 | 28th juli 2011 |
| Java SE 8 (LTS) | 18th Mar 2014 |
| Java SE 9 | 21st september 2017 |
| Java SE 10 | 20th Mar 2018 |
| Java SE 11 (LTS) | 25th september 2018 |
| Java SE 12 | 19th Mar 2019 |
| Java SE 13 | 17th september 2019 |
| Java SE 14 | 17th Mar 2020 |
| Java SE 15 | 15th september 2020 |
| Java SE 16 | 16th Mar 2021 |
| Java SE 17 (LTS) | 14th september 2021 |
| Java SE 18 | 22 marts 2022 |
| Java SE 19 | 20th september 2022 |
| Java SE 20 | 21 marts 2023 |
| Java SE 21 (LTS) | 19th september 2023 |
| Java SE 22 | 19th Mar 2024 |
| Java SE 23 | 17th september 2024 |
| Java SE 24 | 18th Mar 2025 |
| Java SE 25 (LTS) | 16th september 2025 |
Java Funktionalitet
Her er nogle af de vigtigste Java Funktioner, der har holdt den relevant i næsten tre årtier:
- Det er et af de nemmeste objektorienterede programmeringssprog at lære.
- "Skriv én gang, kør hvor som helst" - kode kompileret på én maskine kører på næsten enhver computerplatform.
- Java er platformuafhængig takket være sin bytecode-udførelsesmodel.
- Det er designet fra bunden til objektorienterede applikationer.
- Det er et flertrådet sprog med automatisk hukommelsesstyring (garbage collection).
- Det blev skabt til internettets distribuerede miljø.
- Det letter distribueret databehandling på grund af dets netværkscentrerede design.
Komponenter af Java Programmeringssprog
A Java programmør skriver kode i et menneskelæsbart sprog kaldet kildekodeCPU'en forstår aldrig kildekode direkte — CPU'er kører kun maskinkode, og den maskinkode varierer på tværs af CPU-familier. For at bygge bro over denne kløft, Java Platformen oversætter kildekode til en bærbar mellemliggende form. Alt dette sker inden for tre kernekomponenter: JDK, JVM og JRE.
Java Udviklingssæt (JDK)
JDK er et softwareudviklingsmiljø, der bruges til at bygge applets og Java applikationer. Den fulde form for JDK er Java Udviklingssæt. Java udviklere kan bruge det på Windows, macOS, Solarisog Linux. JDK hjælper dem med at kode og køre Java programmer. Det er muligt at installere mere end én JDK-version på samme computer.
Hvorfor bruge JDK?
- JDK indeholder de værktøjer, der kræves for at skrive Java programmer og en JRE til at udføre dem.
- Den indeholder en compiler (
javac), Den Java programstarter, AppletViewer og lignende værktøjer. - Compileren konverterer kode skrevet i Java ind i bytekode.
- Java programstarteren åbner en JRE, indlæser den nødvendige klasse og udfører dens hovedmetode.
Java Virtuel maskine (JVM)
Java Virtuel maskine (JVM) er en motor, der giver et køremiljø til at køre Java kode eller applikationer. Den konverterer Java bytekode til maskinsprog. JVM'en er en del af Java Runtime Environment (JRE). I andre programmeringssprog producerer compileren maskinkode til et bestemt system. Imidlertid Java compileren producerer kode til en virtuel maskine kendt som Java Virtuel maskine.
Hvorfor JVM?
- JVM giver en platformsuafhængig måde at eksekvere på Java kildekode.
- Den har adskillige biblioteker, værktøjer og frameworks tilgængelige lige fra starten.
- Når du har kompileret en Java program, kan du køre det på enhver platform, hvilket sparer betydelig tid.
- JVM leveres med en JIT (Just-In-Time) compiler, der konverterer bytekode til lavniveau-maskinsprog under kørsel, hvilket ofte får den til at køre hurtigere end en fortolket applikation.
Java Runtime Environment (JRE)
JRE er et stykke software designet til at køre anden software. Det indeholder klassebibliotekerne, loader-klassen og JVM. Kort sagt, hvis du kun vil køre en Java program (og ikke udvikle et), har du brug for JRE i stedet for den fulde JDK.
Hvorfor bruge JRE?
- JRE indeholder klassebiblioteker, JVM og andre understøttende filer. Det inkluderer ikke udviklerværktøjer såsom en debugger eller compiler.
- Den bruger vigtige pakkeklasser, herunder
math,swing,util,lang,awtog runtime-biblioteker. - Hvis du skal løbe Java applets eller applikationer, skal JRE være installeret på dit system.
Forskellige typer af Java Platforme
Der er fire forskellige Java programmeringssprogsplatforme, der hver især er indstillet til et forskelligt implementeringsmål:
1. Java Platform, Standard Edition (Java SE): Java SE's API tilbyder Java programmeringssprogets kernefunktionalitet. Det definerer alt fra basistyper og objekter til klasser på højt niveau, der bruges til netværk, sikkerhed, databaseadgang, udvikling af grafisk brugergrænseflade (GUI) og XML-parsing.
2. Java Platform, Enterprise Edition (Jakarta EE, tidligere Java EE): Jakarta EE-platformen tilbyder et API- og runtime-miljø til udviklingping og kører meget skalerbare, store, flerlags, pålidelige og sikre netværksapplikationer. Oracle overførte platformen til Eclipse Foundation i 2017, som omdøbte det til Jakarta EE.
3. Java Platform, Micro Edition (Java MIG): Java ME-platformen tilbyder en API og en virtuel maskine med lille fodaftryk til kørsel Java applikationer på små enheder såsom funktionstelefoner og indlejrede controllere.
4. JavaFX: JavaFX er en platform til udviklingping avancerede internetapplikationer ved hjælp af en let brugergrænseflade-API. Den bruger hardwareaccelererede grafik- og mediemotorer, der hjælper Java Drag fordel af klienter med højere ydeevne, et moderne udseende og API'er på højt niveau til at oprette forbindelse til netværksforbundne datakilder.
For at forstå Java programmeringssprog, er vi nødt til at genoverveje nogle grundlæggende begreber om, hvordan et computerprogram kører kommandoer og udfører handlinger.
Hvad er en pc?
En computer er en elektronisk enhed, der er i stand til at udføre beregninger. Den består af en skærm, et tastatur, en mus og en hukommelse til at lagre information. Den vigtigste komponent er dog PROCESSOREN. Processoren udfører al computerens tænkning - men hvordan gør den rent faktisk den tænkning? Hvordan forstår den tekst, billeder og videoer?

Hvad er Assembly Sprog?
Computeren er en elektronisk enhed, så den forstår kun elektroniske signaler – binære signaler. Et elektronisk signal på 5 volt kan repræsentere det binære tal 1, mens 0 volt kan repræsentere det binære tal 0. Din pc bliver konstant bombarderet med disse signaler.
Otte bits af disse signaler er grupperet sammen for at fortolke tekst, tal og symboler.
For eksempel identificeres #-tegnet af computeren som 10101010. På samme måde repræsenteres mønsteret for en "add"-funktion af 10000011.
Dette kaldes 8-bit computing. Moderne processorer er i stand til at afkode 64-bit instruktioner ad gangen. Så hvad har dette koncept at gøre med JavaLad os gennemgå et eksempel.
Forestil dig, at du vil bede computeren om at lægge to tal (1 + 2) sammen, der er repræsenteret af nogle binære tal (10000011). Hvordan kommunikerer du det til din computer? Du bruger assemblersprog til at få din kode udført.
"Assembly Sprog er den mest elementære form for softwareudviklingssprog."
Du udfører kommandoer i følgende format. Koden til at addere to tal i assembly-sprog ville se sådan ud:
- Gem nummer 1 på hukommelseslokation A.
- Gem nummer 2 på hukommelseslokation B.
- Læg indholdet af lokation A og B sammen.
- Gem resultatet.
Tilbage i 1950'erne, da computere var enorme og strømkrævende, konverterede man assembly-kode til tilsvarende maskinkode (1'ere og 0'ere) ved hjælp af map-kode.ping ark. Koden blev derefter stanset ind i maskinkort og ført til computeren. Computeren læste disse koder og udførte programmet. Dette var en lang proces - indtil ASSEMBLEREN ankom for at automatisere konverteringen.
Hvad er Assembler og Compiler?
Med teknologiske fremskridt blev I/O-enheder opfundet. Du kunne skrive dit program direkte ind i pc'en ved hjælp af ASSEMBLER, som konverterer det til tilsvarende maskinkode (110001…) og sender det til din processor. Tilbage til vores 1 + 2-eksempel konverterer assembleren assembly-koden til maskinkode som output.
Ud over assembly skal du også foretage kald til funktioner leveret af operativsystemet for at vise outputtet.
Assembleren alene er ikke nok; den har også brug for en COMPILER til at komprimere lang kildekode til mindre, optimerede bidder. Med softwareudviklingssprog på højere niveau krymper hele assembler-kodestykket ovenfor til en enkelt linje, f.eks. printf("%d", 1+2)Compileren konverterer din C-sprog kode til assemblerkode; assembleren konverterer det derefter til maskinkode transmitknyttet til processoren. Den mest almindelige processor, der bruges i pc'er, er Intel-processoren.
Moderne compilere samler ofte assembleren, så de kan konvertere sprogkode på højere niveau direkte til maskinkode.
Forestil dig nu, Windows kører på en Intel-processor — kombinationen af operativsystem plus processor kaldes en PLATFORM. Den mest almindelige platform er Windows på Intel, også kendt som Wintel-platformen. Andre populære platforme inkluderer AMD, Linux, PowerPC og macOS.
Med et skift af processor ændres også samlevejledningen. For eksempel:
- "Add"-instruktionen på Intel kan kaldes ADDITION på AMD.
- Eller “Math ADD” på PowerPC.
Og med en ændring i operativsystemet ændres niveauet og arten af kald på OS-niveau også.
Som udvikler ønsker du, at din software skal fungere på alle platforme for at maksimere rækkevidden. Det betyder, at du bliver nødt til at købe separate compilere, der konverterer dine printf kommandoen i den native maskinkode for hvert mål.
Compilere er dyre, og der er altid en risiko for kompatibilitetsproblemer på tværs af operativsystemer. Det er ikke praktisk at købe og installere en separat compiler for hver OS-processor-kombination. Så hvad er alternativet? Indtast Java Sprog.
Hvordan virker Java Virker en virtuel maskine?
Ved anvendelse af Java Virtual Machine, dette problem kan løses. Men hvordan fungerer det på tværs af forskellige processorer og operativsystemer? Lad os gennemgå det trin for trin.
Trin 1) Koden til at vise additionen af to tal — System.out.println(1+2) — gemmes som en .java fil.
Trin 2) Brug af Java kompilator (javac), konverteres koden til mellemliggende kode kaldet bytekodeOutputtet er en .klasse fil.
Trin 3) Denne bytekode forstås ikke af nogen fysisk platform, kun af en virtuel platform kaldet Java Virtual Machine.
Trin 4) JVM'en findes i RAM'en i dit operativsystem. Når JVM'en modtager denne bytekode, identificerer den den platform, den kører på, og konverterer bytekoden til den native maskinkode undervejs.
Mens du arbejder på din pc eller surfer på nettet, når du ser Java-relaterede ikoner, kan du være sikker på, at JVM'en er indlæst i din RAM. Hvad gør Java attracDet afgørende er, at kompileret kode ikke kun kan køre på alle pc-platforme, men også på mobiltelefoner og andre elektroniske gadgets, der understøtter Java.
"Java er både et programmeringssprog og en platform.”
Hvordan er Java Platform uafhængig?
I modsætning til en C-compiler, Java compileren producerer ikke indbygget eksekverbar kode til en bestemt maskine. I stedet, Java producerer et unikt mellemformat kaldet bytekodeBytekoden udføres i henhold til reglerne i JVM-specifikationen, hvilket er grunden til Java er et platformsuafhængigt sprog.
Bytekode er forståelig for enhver JVM installeret på ethvert operativsystem. Kort sagt, Java Kildekoden kan køre på alle moderne operativsystemer uden rekompilering, hvilket er fundamentet for Java's løfte om "skriv én gang, løb hvor som helst".








