Java Academy logo
JavaNybörjareWebbMobilNivåer A1 → C222 språk

Java Academy

Bli skicklig på Java-programmering och utveckla kraftfulla applikationer med Java Academy. En lärstig från CoddyKit med 104 korta kurser och 374 interaktiva lektioner, med en AI-handledare till hands dygnet runt.

Kurser
104
Lektioner
374
Interaktiva steg
4,355
Gratis att börja
Kurs 1
Kursplan

104 kurser i den här lärvägen

Alla kurser i lärvägen Java Academy, i rätt ordning. Den första är gratis.

1

A13 lektionerGratis

Java är ett högnivåspråk för objektorienterad programmering som introducerades av Sun Microsystems 1995. Java är känt för sin möjlighet att skriva kod en gång och köra den överallt (WORA). Koden komp…

2

A14 lektionerPRO

Scanner och konsolinmatning: läsa indata med Scanner, läsa tal och rader med mera

3

A13 lektionerPRO

Påbörja er Java-resa: lär er vad programmering är, hur Java körs på JVM och vilka verktyg ni behöver härnäst. Den här minikursen förbereder er inför installationen och era första kodrader.

4

A13 lektionerPRO

Behärska Java-variabler och uttryck: lär er primitiva typer, deklarationer, tilldelning, utskrift av värden och grunderna i numeriska uttryck. Korta, mobilanpassade lektioner med körbara exempel.

5

A24 lektionerPRO

Bemästra Javas typsystem: primitiva typer respektive referenstyper, breddande och avsmalnande konverteringar, explicit typkonvertering och instanceof-operatorn i verkliga scenarier.

6

A24 lektionerPRO

Utforska klassen Math, BigDecimal för finansiell precision, NumberFormat för lokaliserad utskrift och praktisk numerisk problemlösning i Java.

7

A24 lektionerPRO

Switch-uttryck och pilsyntax: switch med pilsyntax, switch som uttryck med mera

8

A24 lektionerPRO

Textblock och flerradiga strängar: deklarera textblock, indrag och borttagning med mera

9

A24 lektionerPRO

var och lokal typinferens: använda var för lokala variabler, när var förbättrar läsbarheten med mera

10

A24 lektionerPRO

Wrapper-klasser och autoboxning: primitiva typer kontra wrapper-typer, autoboxning och unboxing med mera

11

A24 lektionerPRO

Hjälpklassen Arrays: Arrays.sort och sortering, Arrays.binarySearch med mera

12

A24 lektionerPRO

Javas Random- och Math-verktyg: klassen Math, generera slumptal med mera

13

A24 lektionerPRO

Läs användar- och filindata effektivt i Java.

14

A24 lektionerPRO

Skriv kompakta beslut med den villkorliga operatorn.

15

A24 lektionerPRO

Arbeta med enskilda tecken med klassen Character.

16

A24 lektionerPRO

Skapa snyggt formaterad text med formatspecifikationer.

17

A24 lektionerPRO

Styr nästlade loopar med break, continue och etiketter.

18

A23 lektionerPRO

Fatta beslut i Java med if, else if och else. Skapa tydliga booleska uttryck med jämförelseoperatorer och logiska operatorer. Korta, mobilanpassade lektioner med körbara exempel.

19

A23 lektionerPRO

Fördjupa er i jämförelser (==, !=, <, >, <=, >=) och boolesk logik (&&, ||, !). Lär er operatorprioritet, gruppering med parenteser, kortslutningsutvärdering och De Morgans lagar.

20

A22 lektionerPRO

Lär er while-loopar steg för steg: initiering, villkor, uppdatering och hur ni undviker oändliga loopar. Öva på små mönster som upprepar åtgärder på ett säkert sätt. Mobilanpassat med korta scener oc…

21

A23 lektionerPRO

Behärska for-loopen: initiering, villkor och uppdatering på en rad. Skriv räkneloopar, summor och enkla mönster. Lär er att använda break och continue på ett säkert sätt.

22

A21 lektionPRO

Java erbjuder många operatorer för att arbeta med data. Med hjälp av dessa operatorer kan vi bearbeta våra data. Aritmetiska operatorer är den typ av operatorer som de flesta redan känner till från m…

23

A21 lektionPRO

Datatypen String används i Java för att lagra text. Strängar är referenstyper, inte primitiva typer, i Java. I den här kursen lär Ni Er att använda String i Java.

24

A23 lektionerPRO

Lär er om endimensionella arrayer: vad de är, hur ni deklarerar och skapar dem, får åtkomst till och uppdaterar element, använder length och itererar med for och utökad for-each .

25

A26 lektionerPRO

Lär dig 2D-arrayer i Java: deklarera och skapa dem, komma åt rader och kolumner samt iterera med nästlade loopar. Öva på att beräkna rad- och kolumnsummor och formatera utdata.

26

A23 lektionerPRO

Behärska grunderna i Java-metoder: signaturer, parametrar jämfört med argument, anropskonventioner och grundläggande design. Korta, fokuserade lektioner med körbara exempel.

27

A23 lektionerPRO

Designa och återanvänd metoder effektivt: förstå Javas pass-by-value-semantik, välj mellan statiska metoder och instansmetoder och dela upp problem i rena, testbara rutiner.

28

B14 lektionerPRO

Lär dig definiera och använda enums i Java: enum-konstanter, fält, metoder, switch-uttryck med enums samt samlingarna EnumSet och EnumMap.

29

B14 lektionerPRO

Upptäck Java Records (Java 16+): skapa oföränderliga databärare, kompakta konstruktorer och anpassade metoder för records samt när records bör användas i stället för klasser.

30

B14 lektionerPRO

StringBuilder och strängprestanda: varför strängar är oföränderliga, bygga strängar med StringBuilder med mera

31

B14 lektionerPRO

BigDecimal och BigInteger: varför inte double för pengar, arbeta med BigDecimal med mera

32

B14 lektionerPRO

Datum- och tids-API:t java.time: LocalDate, LocalTime, LocalDateTime, Instant och Duration med mera

33

B14 lektionerPRO

Använd Optional för att eliminera NullPointerExceptions: skapa, mappa, filtrera och använda Optionals på idiomatiskt sätt i Java 17+.

34

B14 lektionerPRO

Gå bortom grundläggande strängar: StringBuilder, StringJoiner, reguljära uttryck, String.format, textblock och vanliga mönster för strängalgoritmer.

35

B14 lektionerPRO

Bemästra upplösning av metodöverlagring, varargs-parametrar, statiska fält och metoder samt designmönster för verktygsklasser i Java.

36

B14 lektionerPRO

Utforska varianter av nästlade klasser: statiska nästlade klasser, inre klasser, lokala klasser och anonyma klasser samt när varje variant passar.

37

B14 lektionerPRO

Implementera egna Iterable- och Iterator-gränssnitt så att dina datastrukturer fungerar med for-each-loopar och Javas Collections-ramverk.

38

B14 lektionerPRO

Sortera samlingar och arrayer med Comparable, Comparator, metodreferenser och sorteringskedjor i flera nivåer för verkliga datascenarier.

39

B14 lektionerPRO

Förstå LinkedLists interna funktion, den dubbel­länkade strukturen, Deque-operationer, simulering av stackar och när LinkedList överträffar ArrayList.

40

B14 lektionerPRO

Bemästra sorterade samlingar: TreeMaps NavigableMap-operationer, TreeSet för unika sorterade element, subMap/headMap/tailMap och grunderna i rödsvarta träd.

41

B14 lektionerPRO

Navigera i det moderna java.nio.file-API:t: skapa Path-objekt, använda Files-verktygsmetoder, gå igenom kataloger med walkFileTree och bevaka kataloger med WatchService.

42

B14 lektionerPRO

Förstå Java-serialisering: Serializable-gränssnittet, transient-fält, serialVersionUID, anpassade writeObject/readObject och moderna alternativ som JSON.

43

B14 lektionerPRO

Förseglade klasser och gränssnitt: deklarera förseglade typer, permits-satsen med mera

44

B14 lektionerPRO

Mönstermatchning för instanceof och records: mönstermatchning för instanceof, record-mönster med mera

45

B14 lektionerPRO

Reguljära uttryck med Pattern och Matcher: kompilera mönster, hitta och matcha med mera

46

B14 lektionerPRO

HashMap-interna och equals/hashCode: hur HashMap fungerar, avtalet för equals/hashCode med mera

47

B14 lektionerPRO

EnumMap, EnumSet och avancerade enumtyper: enumtyper med fält och metoder, abstrakta metoder i enumtyper med mera

48

B14 lektionerPRO

Loggning med SLF4J och Logback: varför strukturerad loggning, SLF4J-fasad och loggers med mera

49

B11 lektionPRO

Java använder åtkomstmodifierare för att begränsa åtkomsten mellan objekt. Begränsningen kan gälla på klassnivå såväl som på variabel-, metod- eller konstruktornivå.

50

B13 lektionerPRO

Bygg ett litet verktyg för ordstatistik: tokenisera text, normalisera, räkna och rapportera de vanligaste resultaten. Planera först, implementera sedan.

51

B13 lektionerPRO

Lär dig grunderna i klasser och objekt i Java. Skapa enkla klasser, instansiera objekt och förstå deras roll i OOP.

52

B13 lektionerPRO

Vardagliga OOP-arbetssätt i Java: nyckelordet this, läsbara toString, korrekta equals och hashCode samt praktiska tips för små appar.

53

B13 lektionerPRO

Lär dig grunderna i arv i Java: utöka en basklass, anropa super-konstruktorer och återanvänd gemensamt beteende på ett säkert sätt.

54

B13 lektionerPRO

Abstrakta klasser och gränssnitt i Java: när de ska användas, hur de deklareras och hur de vägleder designen.

55

B13 lektionerPRO

Designa och implementera en liten formhierarki med en abstrakt basklass, konkreta former och polymorfa beteenden.

56

B13 lektionerPRO

Lär dig Javas List och Set: när respektive typ ska användas, grundläggande operationer och enkla itereringsmönster.

57

B13 lektionerPRO

Lär dig använda Map för uppslag från nyckel→värde, frekvensräkning och enkla algoritmer med listor och mängder.

58

B13 lektionerPRO

Lär dig grunderna i undantagshantering: try-, catch- och finally-block med enkla exempel.

59

B13 lektionerPRO

Tillämpa undantagshantering med anpassade undantag, throw-satser och defensiv kodning.

60

B13 lektionerPRO

Lär dig Javas NIO-klasser Path och Files: skapa, kontrollera och ta bort filer på ett säkert sätt.

61

B13 lektionerPRO

Lär dig serialisering av Java-objekt: skriv objekt till filer och läs tillbaka dem.

62

B13 lektionerPRO

Bygg en enkel logganalysator som läser, tolkar och sammanfattar loggfiler.

63

B14 lektionerPRO

Byggverktyg: Maven och Gradle: Maven-projektstruktur, Maven-pluginer och mål med mera

64

B14 lektionerPRO

JDBC och anslutningspoolning: grunderna i JDBC, PreparedStatement med mera

65

B24 lektionerPRO

Gå bortom grundläggande Streams: groupingBy, partitioningBy, toMap, counting, summarizingInt, joining och skapande av egna Collectors för komplexa aggregeringar.

66

B24 lektionerPRO

Förenkla lambda-uttryck med metodreferenser: statiska referenser, instansreferenser, referenser till godtyckliga instanser och konstruktorreferenser med verkliga exempel på funktionella gränssnitt.

67

B24 lektionerPRO

Implementera de fyra viktigaste skapandemönstren i Java: Singleton (trådsäker), Factory Method, Abstract Factory och Builder med fluent-API:er.

68

B24 lektionerPRO

Bemästra beteendemönster i Java: Observer, Strategy, Command och Template Method med konkreta användningsfall från verkliga applikationer.

69

B24 lektionerPRO

Funktionella gränssnitt på djupet: Function och BiFunction, Supplier och Consumer med mera

70

B24 lektionerPRO

Primitiva streams: IntStream och LongStream, range- och aggregatoperationer med mera

71

B24 lektionerPRO

Begränsade wildcards och PECS: wildcards med övre gräns, wildcards med nedre gräns med mera

72

B23 lektionerPRO

Gränssnitt i praktiken och grunderna i Javas generics för säkrare, återanvändbar kod.

73

B24 lektionerPRO

Definiera egna annoteringar, deras retention policies och mål, och bearbeta dem under körning med reflection samt vid kompilering med annoteringsprocessorer.

74

B24 lektionerPRO

Upptäck avancerade Stream-funktioner: flatMap för nästlade strukturer, peek för felsökning, fallgropar med parallella strömmar, Spliterator-interna funktioner och oändliga strömmar.

75

B24 lektionerPRO

Bemästra Spring Boot:s autokonfiguration, application properties, profiler, @Bean, @Component, @Service, @Repository och bästa praxis för konstruktorinjektion.

76

B24 lektionerPRO

Mappa Java-entiteter till databastabeller med JPA-annoteringar, definiera Spring Data-repositories, skriv JPQL- och native-frågor och hantera relationer.

77

B24 lektionerPRO

Bygg robusta REST-API:er: Bean Validation med @Valid, egna validatorer, global undantagshantering med @ControllerAdvice och problemdetaljer enligt RFC 7807.

78

B24 lektionerPRO

Gå längre än grundläggande enhetstester: parametriserade tester med @MethodSource, @CsvSource, Testcontainers för databasintegration och Spring Boot-testskivor.

79

B24 lektionerPRO

Implementera säkerhetsgrunder i Java: MessageDigest för hashing, AES-kryptering, HMAC-SHA256 samt skapande och verifiering av JWT utan externa autentiseringsbibliotek.

80

B24 lektionerPRO

Javas modulsystem (JPMS): module-info.java, requires och exports med mera

81

B24 lektionerPRO

Den moderna HTTP-klienten: java.net.http.HttpClient, asynkrona begäranden med mera

82

B24 lektionerPRO

GraalVM och Native Image: vad är GraalVM?, bygga en Native Image med mera

83

B23 lektionerPRO

Lär dig Javas lambdauttryck och funktionella gränssnitt.

84

B23 lektionerPRO

Lär dig använda Java Streams för att bearbeta data med pipelines.

85

B23 lektionerPRO

Kom igång med Spring Boot: konfigurera ett projekt, använd starters och kör din första app.

86

B23 lektionerPRO

Lär dig använda Spring Data JPA och H2-databasen med repositories.

87

B23 lektionerPRO

Testa Spring-appar med WebTestClient/JUnit, konfiguration och paketering.

88

B24 lektionerPRO

Designa, implementera och testa ett REST API med Spring Boot.

89

C14 lektionerPRO

Hantera trådars livscykler med ExecutorService: fasta, cachade och schemalagda trådpooler, skicka Callable-uppgifter och hantera Future-resultat.

90

C14 lektionerPRO

Gå bortom synchronized: ReentrantLock, ReadWriteLock, StampedLock, AtomicInteger, AtomicReference och mönster för låsfria datastrukturer.

91

C14 lektionerPRO

Parallella streams och prestanda: skapa parallella streams, när parallellisering hjälper med mera

92

C14 lektionerPRO

Förstå JVM:s minnesmodell: heap-områden (Young/Old/Metaspace), GC-algoritmer (G1, ZGC), minnesläckor, profilering med JVisualVM och inställningsflaggor.

93

C14 lektionerPRO

Kombinera asynkrona beräkningar med CompletableFuture: thenApply, thenCompose, allOf, anyOf, exceptionally och hur du bygger icke-blockerande pipelines.

94

C14 lektionerPRO

Använd Reflection API för att inspektera och anropa klasser under körning, skapa dynamiska proxier och förstå hur ramverk som Spring använder reflection internt.

95

C14 lektionerPRO

Titta in i JVM: faserna vid klassladdning, hierarkin bootstrap/extension/application loader, bytekodsinspektion med javap och grunderna i JIT-kompilering.

96

C14 lektionerPRO

Virtuella trådar (Project Loom): vad är virtuella trådar?, skapa virtuella trådar med mera

97

C14 lektionerPRO

Strukturerad samtidighet: modellen för strukturerad samtidighet, StructuredTaskScope med mera

98

C14 lektionerPRO

Mikrobenchmarking med JMH: varför JMH?, skriva ett benchmark med mera

99

C14 lektionerPRO

Prestandaprofilering och optimering i Java: identifiera flaskhalsar, Java Flight Recorder med mera

100

C13 lektionerPRO

Lär dig avancerade beteenden hos Streams, inklusive ordning och kortslutande operationer.

101

C12 lektionerPRO

En introduktion till samtidighet i Java med Threads, Executors och synkronisering.

102

C13 lektionerPRO

Avancerad samtidighet: synkronisering, lås, atomics och vanliga problem.

103

C13 lektionerPRO

Bygg ett projekt som beräknar statistik parallellt med hjälp av streams och samtidighet.

104

C24 lektionerPRO

API:t för främmande funktioner och minne: varför FFM i stället för JNI, MemorySegment och Arena med mera

CoddyKit PRO

Lås upp alla 104 kurser i den här lärvägen och alla andra lärvägar

AI-handledare, certifieringsprov och certifikat. Fungerar på webben, iOS och Android.

Se alla abonnemang
Årsvis$29.90 / årCirka $2.49 i månadenBetala en gångLivstid$69.99 en gångInga förnyelser. PRO för alltid.
Kursöversikt

Java: Från första klassen till produktionsklara system

Java har varit ryggraden i företagsprogramvara, Android-utveckling och storskaliga backend-system i nästan tre decennier. Det körs på JVM, levereras med ett omfattande standardbibliotek och driver allt från plattformar för finansiell handel till molnbaserade mikrotjänster. Den här kursserien bygger upp verklig Java-kompetens — från variabler och styrflöden till JVM-interna detaljer, virtuella trådar och native-kompilering via GraalVM.

Det här får du lära dig

Du går från grundläggande syntax — variabler, datatyper, loopar och metoder — till objektorienterad design med klasser, arv, polymorfism, sealed classes och records. På mellannivåerna täcker du hela Collections-ramverket, API:erna java.time och NIO.2, lambda-uttryck, funktionella gränssnitt och Streams API, inklusive collectors, spliterators och primitivaströmmar. Senare kurser behandlar konfiguration och dependency injection i Spring Boot, Spring Data JPA, validering av REST-API:er, integrationstestning med JUnit 5 och JWT-baserad säkerhet. Den avancerade delen av kursserien täcker ExecutorService, lås, atomära variabler, CompletableFuture, strukturerad samtidighet, virtuella trådar via Project Loom, JVM:s klassladdning och bytekod, kompilering av native images med GraalVM samt prestandaprofilering med JMH.

Utbildningsvägen

Över 120 kurser sträcker sig från A1 till C2. Kurserna på A1- och A2-nivå lägger grunderna: typsystemet, typkonvertering, autoboxning, wrapper-klasser, arrayer, villkorssatser och metoder. B1 täcker objektorienterad Java på djupet — enum-typer, inre klasser, iteratorer, comparatorer, interna detaljer i HashMap, undantagshantering, serialisering och byggverktyg som Maven och Gradle. B2 introducerar funktionell programmering, generics med begränsade wildcards, anpassade annoteringar och en praktisk Spring Boot-serie som avslutas med ett miniprojekt: REST API. På C1-nivå står samtidighet och prestanda i centrum — parallella strömmar, Java Memory Model, skräpsamling, reflection, dynamiska proxies och strukturerad samtidighet. Kursserien avslutas på C2-nivå med Foreign Function and Memory API, Javas lågnivåfunktion för direkt interoperabilitet med native-kod.

Så fungerar det

Varje kurs är uppdelad i korta, fokuserade lektioner som du genomför i den inbyggda kodredigeraren med feedback i realtid. En AI-handledare finns tillgänglig när du kör fast, och miniprojekt vid viktiga milstolpar — Word Stats, Shape Hierarchy, Log Analyzer, REST API och Parallel Stats — låter dig tillämpa det du har lärt dig innan du går vidare.

Så lär du dig

  1. 01

    Interaktiva lektioner

    Praktiska kodövningar med feedback i realtid

  2. 02

    AI-handledare

    Få omedelbar hjälp av vår AI när du kör fast

  3. 03

    Inbyggd kodredigerare

    Skriv och kör kod direkt i webbläsaren

  4. 04

    Certifikat

    Få ett certifikat när du slutför kursen

FAQ

Vanliga frågor

Är kursen i Java Academy gratis?

Ja. Ni kan börja kursen i Java Academy gratis och genomföra de interaktiva lektionerna utan kostnad. Med en valfri PRO-prenumeration får Ni tillgång till avancerade AI-verktyg och ett certifikat som kan delas.

Behöver jag tidigare erfarenhet för att lära mig Java?

Nej. Kursen börjar med grunderna och går stegvis vidare till mer avancerade ämnen, så Ni kan börja även utan tidigare erfarenhet av Java.

Hur lär jag mig Java på CoddyKit?

Ni lär Er genom att göra. Korta interaktiva lektioner kombinerar tydliga förklaringar med praktiska kodövningar som körs i realtid, och en AI-handledare som är tillgänglig dygnet runt ger personlig hjälp när Ni kör fast.

Får jag ett certifikat när jag har slutfört Java Academy?

Ja. PRO-användare kan göra ett prov och få ett delbart intyg på att de har slutfört kursen i Java Academy, med en verifierbar kod.

Kan jag lära mig Java i mobilen?

Ja. CoddyKit finns på webben och som inbyggda iOS- och Android-appar, så Ni kan lära Er Java på valfri enhet och synkronisera Era framsteg mellan dem.

Vad kostar CoddyKit PRO?

Den första kursen i Java Academy är gratis. CoddyKit PRO låser upp alla kurser: $5.90 per vecka, $7.90 per månad, $29.90 per år eller $69.99 en gång för livstidsåtkomst utan förnyelser.

Hur lång tid tar det att slutföra Java Academy?

Java Academy har 104 kurser och 374 lektioner. De flesta lektioner tar cirka 5–10 minuter, så hela lärvägen motsvarar ungefär 44 timmars praktisk övning i egen takt.

Börja med Java Academy nu

Anslut Er till tusentals deltagare som lär sig programmering med AI-drivna lektioner.