
Java-kurs
Behärska Java från grunden och bygg de färdigheter som arbetsgivare faktiskt efterfrågar. Den här kursen tar dig från grundläggande syntax och objektorienterad design hela vägen till samtidighet, prestandajustering och professionella arbetsflöden. Varje koncept backas upp av praktisk kod som du själv skriver. Börja skriva produktionsfärdig Java-kod redan idag.
Vad du kommer att lära dig:
Du lär dig att sätta upp en professionell Java-utvecklingsmiljö och skriva ren, välstrukturerad kod från dag ett. Kursen täcker objektorienterad programmering, Collections Framework, generics, lambdas och Streams API. Du hanterar undantag korrekt, arbetar med filer och nätverk samt bygger flertrådade applikationer med moderna samtidighetsverktyg. Utöver själva språket använder du Maven eller Gradle, skriver automatiserade tester med JUnit 5 och Mockito samt ansluter Java-applikationer till relationsdatabaser med JDBC och JPA. Du studerar också designmönster, prestandaprofilering och de professionella arbetssätt som gör Java-utvecklare effektiva i verkliga team.
Hur du studerar praktiskt Java-kurs
Hur du övar Java-kurs
För dig som är företag och vill utbilda ditt team
På Dedika för företag anpassas kursen med övningar och exempel från just din verksamhet, på det sätt som ditt företag behöver.
Kursinnehåll
8 Kapitlen • 40 LektionerVaraktighet mellan 4 och 360 timmar (du bestämmer)
Kapitel 1DöljDölj detaljerSe detaljerGrunderna i Java och miljöinstallation
Grunderna i Java och miljöinstallation
Lektion 1 • Översikt över Javaplattformen och ekosystemet
Behandlar JVM:s, JDK:s och JRE:s roller och hur Java uppnår plattformsoberoende. Ger studenterna en grund i arkitekturen innan de börjar skriva kod.
Lektion 2 • Primitiva datatyper och variabler
Förklarar de åtta primitiva typerna, variabeldeklaration och typomvandlingsregler. Studenterna får exakt kontroll över datarepresentation i minnet.
Lektion 3 • Javasyntax och programstruktur
Introducerar klasser, metoder och main-startpunkten som stommen i varje Javaprogram. Bygger den syntaktiska grund som alla senare kapitel bygger på.
Lektion 4 • Installation och konfiguration av utvecklingsmiljön
Guidar genom installation av JDK och en modern IDE och verifierar sedan installationen med en första kompilering. Säkerställer att varje student har en fungerande arbetsyta från dag ett.
Lektion 5 • Operatorer och uttryck
Behandlar aritmetiska, relationella, logiska och bitvisa operatorer med operatorprioritet. Studenterna lär sig konstruera korrekta uttryck för beräkningar och beslut.
Kapitel 2DöljDölj detaljerSe detaljerKontrollflöde och metoder
Kontrollflöde och metoder
Lektion 1 • Rekursionsgrunder
Introducerar rekursivt tänkande med basfall och rekursiva anrop. Förbereder studenterna för trädgenomgång och söndra-och-härska-mönster i senare kapitel.
Lektion 2 • Loopkonstruktioner
Behandlar for-, while- och do-while-loopar samt loopkontrollsatser. Studenterna lär sig iterera över data och undvika vanliga fällor med oändliga loopar.
Lektion 3 • Definiera och anropa metoder
Förklarar metodsignaturer, returtyper och anropsmekanismer. Etablerar återanvändbarhet som en central designprincip som tillämpas genom hela kursen.
Lektion 4 • Räckvidd, livslängd och variabelskuggning
Definierar blockräckvidd, lokala variabler och skuggningsrisker. Förebygger subtila buggar som uppstår när variabelnamn kolliderar över nästlade räckvidder.
Lektion 5 • Villkorssatser
Lär ut if-else-kedjor och switch-satser för förgreningslogik. Kopplar direkt till operatorkunskapen från kapitel 1 för att bilda kompletta beslutsstrukturer.
Kapitel 3DöljDölj detaljerSe detaljerGrunder i objektorienterad programmering
Grunder i objektorienterad programmering
Lektion 1 • Polymorfism och dynamisk dispatch
Demonstrerar körtidspolymorfism via referenstyper och metoddispatch. Studenterna skriver flexibel kod som fungerar med familjer av relaterade typer.
Lektion 2 • Klasser, objekt och konstruktorer
Definierar klassritningar, objektinstansiering och konstruktoröverlagring. Översätter verkliga entiteter till Java-klassdesigner.
Lektion 3 • Inkapsling och åtkomstmodifierare
Behandlar public-, private- och protected-åtkomstnivåer med getter/setter-mönster. Upprätthåller datainkapsling som den första OOP-pelaren.
Lektion 4 • Abstrakta klasser och gränssnitt
Kontrasterar abstrakta klasser med gränssnitt och förklarar när var och en ska användas. Fullbordar OOP-grunden som behövs för designmönster och ramverk.
Lektion 5 • Arv och klasshierarki
Förklarar extends, metodöverskuggning och nyckelordet super för att återanvända föräldrabeteende. Bygger den andra OOP-pelaren ovanpå inkapslingskoncept.
Kapitel 4DöljDölj detaljerSe detaljerArrayer, strängar och grundläggande datastrukturer
Arrayer, strängar och grundläggande datastrukturer
Lektion 1 • Listor och ArrayList-klassen
Introducerar List-gränssnittet och ArrayList som den mest använda samlingen. Överbryggar råa arrayer till det fullständiga Collections Framework som introduceras härnäst.
Lektion 2 • Arrayer och flerdimensionella arrayer
Behandlar arraydeklaration, initiering och genomgång inklusive 2D-arrayer. Ger den lågnivåbaslinje för datastrukturer innan samlingar introduceras.
Lektion 3 • Sortera och söka i samlingar
Tillämpar Comparable, Comparator och Collections-verktygsmetoder för ordning. Förbereder studenterna för algoritmisk tankegång som används i avancerade kapitel.
Lektion 4 • Stränghantering och oföränderlighet
Förklarar String-oföränderlighet, strängpoolen och viktiga String-API-metoder. Studenterna hanterar textbearbetningsuppgifter korrekt och effektivt.
Lektion 5 • Kartor, mängder och köstrukturer
Behandlar HashMap, HashSet, LinkedList som Queue och deras användningsfall. Studenterna väljer rätt samling baserat på åtkomstmönster och unikhetsbehov.
Kapitel 5DöljDölj detaljerSe detaljerUndantagshantering och felsökning
Undantagshantering och felsökning
Lektion 1 • Try-Catch-Finally och Multi-Catch
Behandlar try-catch-block, multi-catch-syntax och finally-klausulen för uppstädning. Studenterna hanterar flera fellägen utan att duplicera återställningskod.
Lektion 2 • Try-With-Resources och AutoCloseable
Introducerar automatisk resurshantering för I/O och databasanslutningar. Eliminerar resursläckor som uppstår från manuella close-anrop i finally-block.
Lektion 3 • Skapa anpassade undantag
Guidar design av domänspecifika undantagsklasser med meningsfulla meddelanden. Möjliggör för API:er att tydligt kommunicera felkontext till anropare.
Lektion 4 • Felsökningstekniker och verktyg
Behandlar IDE-felsökningsanvändning, stack trace-läsning och loggningsgrunder. Studenterna lokaliserar och åtgärdar defekter systematiskt istället för att förlita sig på utskriftssatser.
Lektion 5 • Javas undantagshierarki
Kartlägger Throwable-, Exception- och Error-klassträdet och särskiljer kontrollerade från okontrollerade undantag. Ger den konceptuella modellen för alla beslut om undantagshantering.
Kapitel 6DöljDölj detaljerSe detaljerGenerics, lambdauttryck och funktionell programmering
Generics, lambdauttryck och funktionell programmering
Lektion 1 • Generics och typparametrar
Förklarar generiska klasser, metoder och begränsade typparametrar. Eliminerar osäkra typomvandlingar och möjliggör återanvändbara, typsäkra datastrukturer.
Lektion 2 • Streams API
Lär ut strömskapande, intermediära operationer och terminala operationer för samlingsbearbetning. Ersätter omständliga loopar med deklarativa, pipelineliknande datatransformationer.
Lektion 3 • Funktionella gränssnitt och lambdauttryck
Introducerar @FunctionalInterface, lambdasyntax och metodreferenser. Möjliggör att skicka beteende som data, en förutsättning för Streams API.
Lektion 4 • Inbyggda funktionella gränssnitt
Behandlar Predicate, Function, Consumer, Supplier och BiFunction från java.util.function. Studenterna komponerar återanvändbara beteendebyggstenar för strömpipelines.
Lektion 5 • Optional och null-säkerhet
Använder Optional för att modellera frånvarande värden utan null-referenser. Minskar NullPointerExceptions och gör frånvaro explicit i metodsignaturer.
Kapitel 7DöljDölj detaljerSe detaljerFil-I/O, serialisering och nätverksgrunder
Fil-I/O, serialisering och nätverksgrunder
Lektion 1 • Byte- och teckenströmmar
Förklarar InputStream-, OutputStream-, Reader- och Writer-hierarkierna med buffring. Studenterna hanterar binär- och textdata effektivt utan resursläckor.
Lektion 2 • Nätverkskommunikation med sockets och HTTP
Behandlar TCP-socketprogrammering och HttpClient-API:et för HTTP-förfrågningar. Studenterna bygger enkla klient-server-kommunikationsprogram.
Lektion 3 • Arbeta med JSON och textformat
Introducerar JSON-tolkning och -generering med ett standardbibliotek. Förbereder studenterna för REST API-integration som tas upp i kompletterande kapitel.
Lektion 4 • Objektserialisering och deserialisering
Lär ut Serializable, ObjectOutputStream och versionshantering med serialVersionUID. Studenterna sparar objektgrafer till disk och återställer dem tillförlitligt.
Lektion 5 • Filsystemoperationer med java.nio.file
Behandlar Path, Files och kataloggenomgång med NIO.2-API:et. Ersätter äldre File-klassanvändning med det moderna, undantagssäkra alternativet.
Kapitel 8DöljDölj detaljerSe detaljerParallellitet och flertrådning
Parallellitet och flertrådning
Lektion 1 • Synkronisering och delat tillstånd
Behandlar synchronized-block, intrinsiska lås och nyckelordet volatile. Studenterna eliminerar tävlingstillstånd och synlighetsbuggar i program med delat minne.
Lektion 2 • Executor Framework och trådpooler
Introducerar ExecutorService, trådpooltyper och Future för asynkrona resultat. Ersätter rå trådhantering med skalbara, konfigurerbara exekveringspolicyer.
Lektion 3 • Parallella samlingar och atomära variabler
Behandlar ConcurrentHashMap, CopyOnWriteArrayList och AtomicInteger för låsfria operationer. Studenterna undviker grovkornig låsning som begränsar genomströmning.
Lektion 4 • CompletableFuture och asynkrona pipelines
Lär ut CompletableFuture-kedjning, undantagshantering och kombination av flera asynkrona uppgifter. Studenterna bygger icke-blockerande pipelines som maximerar CPU-användning.
Lektion 5 • Trådar och Runnable-gränssnittet
Förklarar trådskapande via Thread-underklassning och Runnable, plus trådlivscykeltillstånd. Etablerar den parallellitetsmodell som alla efterföljande avsnitt bygger på.
Ditt giltiga slutförandecertifikat
Den här kursen är för dig:
Blivande utvecklare: ivriga att ta steget in i mjukvaruutveckling med ett efterfrågat och marknadsgångbart språk.
Karriärbytare: redo att lämna icke-tekniska roller och bygga en grund inom programmering.
Datavetenskapsstudenter: som vill förstärka klassrumsteorin med praktiska, praktiska Java-projekt.
Hobbykodare: som vill gå bortom skriptning och ta itu med strukturerad, objektorienterad utveckling.
IT-personal: som siktar på att bredda sin kompetens från infrastruktur till applikationsutveckling.
Juniora utvecklare: som arbetar på ett annat språk och lägger till Java för att öka sitt jobbmarknadsvärde.
Vad våra elever säger
Era lektioner är perfekta. Jag köpte årspaketet och har äntligen möjlighet att följa olika ämnen som intresserar mig utan att behöva byta plattform... tack för allt ni gör, jag har redan rekommenderat er till andra...

Jag gillar hur lektionerna går rakt på sak och hur jag kan byta kapitel och hoppa över innehåll som jag inte behöver.

Jag gillar innehållet och presentationssättet samt transkriptionen av videorna, vilket påskyndar processen!

Plattformen är snabb och enkel att använda. Mångfalden av innehåll och de kompletterande videorna hjälper mycket i inlärningen.

Viktigaste kompetenserna
FAQ
Vem är Dedika?
Är intyget giltigt i Sverige?
Är kurserna gratis?
Vad är kursens arbetsinsats?
Hur ser kurserna ut?
Hur fungerar kurserna?
Hur lång tid tar kurserna?
Vad kostar kurserna?
Vad är en EAD- eller onlinekurs och hur fungerar den?
PDF-kurs




















