Cursusaanbod

Inleiding tot Java

  • Geschiedenis en evolutie van Java
  • Overzicht van Java versies en updates
  • Wat is er nieuw in Java 17
  • Instellen Java Development Kit (JDK 17) en IDE

Java Structuur van het programma

  • Het schrijven van een eenvoudig Java programma
  • Java Syntax overzicht
  • Toepassingen compileren en uitvoeren Java

Gegevenstypen en variabelen

  • Primitieve gegevenstypen en wrapperklassen
  • Variabelen en constanten declareren
  • Typeconversie en gieten

Operatoren in Java

  • Rekenkundige, relationele, logische en bitsgewijze operatoren
  • Voorrang en associativiteit van de operator

Overzichten van de controlestroom

  • Voorwaardelijke instructies (if-else, switch)
  • Looping-constructies (voor, terwijl, doe-terwijl)
  • Verbeterde schakelexpressies (Java 17-functie)

Inleiding tot OOP-concepten

  • Klassen en objecten
  • Inkapseling, overerving, polymorfisme en abstractie

Klassen en objecten maken

  • Objecten declareren en initialiseren
  • Het sleutelwoord van dit
  • Constructeurs (standaard en geparametriseerd)

Erfenis

  • Klassen uitbreiden (trefwoord uitbreiden)
  • Methode overschrijven en super trefwoord
  • Abstracte klassen en methoden

Polymorfisme

  • Compilatietijd vs. runtime polymorfisme
  • Methode overbelasting en overschrijven

Interfaces

  • Definiëren en implementeren van interfaces
  • Functionele interfaces en standaardmethoden

Record Klassen (Java 17 functie)

  • Inzicht in records in Java 17
  • Hoe records de inkapseling van gegevens vereenvoudigen

Generieke geneesmiddelen in Java

  • Inzicht in typeparameters
  • Algemene klassen, methoden en interfaces
  • Begrensde typen en jokertekens

Afhandeling van uitzonderingen

  • Soorten uitzonderingen (aangevinkt en niet-aangevinkt)
  • Probeer-vang-eindelijk blokken
  • Uitzonderingen gooien en vangen
  • Aangepaste uitzonderingen maken

Java Kader voor verzamelingen

  • Lijst-, Set-, Kaart- en Wachtrij-interfaces
  • Populaire implementaties: ArrayList, HashMap, HashSet
  • Iteratoren en verbeterd voor lussen

Lambda Expressionen en functioneel Programming

  • Inleiding tot lambda-expressies
  • Syntaxis en gebruik
  • Functionele interfaces

Stream-API

  • Overzicht van Java streams
  • Stroombewerkingen (filteren, in kaart brengen, verkleinen)
  • Parallelle streams en prestatieoverwegingen

Verzegelde klassen

  • Verzegelde klassen definiëren en gebruiken
  • Toegestane subklassen en beperkingen

Patroonherkenning voor bijvoorbeeld (Java 17 functie)

  • Typecontroles vereenvoudigen met patroonafstemming

Tekstblokken

  • Werken met tekstblokken met meerdere regels in Java
  • Vergelijking met traditionele stringhandling

Verbeteringen in records en serialisatie

  • Serialisatie en achterwaartse compatibiliteit
  • Hoe records de leesbaarheid en het onderhoud van code verbeteren

Afschaffing en verwijdering van functies

  • Afgeschafte API's in Java 17
  • Verwijdering van verouderde functies

Verbeteringen in schakelaar Expression

  • Patroon afstemming in schakelaar
  • Switch-expressies gebruiken voor schonere code

Buitenlandse Functie & Geheugen API (Incubator)

  • Overzicht van de incubatormodule
  • Werken met native code in Java

Java Modulesysteem (Project Jigsaw)

  • Inleiding tot modules in Java
  • Modules maken en gebruiken
  • Moduledescriptoren en module-info.java
  • Voordelen van modularisering

Gelijktijdigheid en multithreading

  • Inleiding tot threads en multithreading
  • Runnable-interface en Callable-interface
  • Synchronisatie, vergrendelingen en draadveiligheid

Asynchroon Programming met CompetableFuture

  • Asynchrone code schrijven
  • CompetableFuture gebruiken voor niet-blokkerende bewerkingen

Java toepassingen implementeren

  • JAR-bestanden maken en uitvoeren
  • Verpakken en distribueren van Java toepassingen
  • Inleiding tot GraalVM (optioneel)

Best practices en code-optimalisatie

  • Efficiënte en onderhoudbare Java code schrijven
  • Veelvoorkomende prestatievalkuilen en hoe u ze kunt vermijden
  • Technieken voor het herstructureren van codes

Samenvatting en volgende stappen

Vereisten

  • Basiskennis in programmeren

Audiëntie

  • Softwareontwikkelaars
  • Programmeurs
 35 Uren

Aantal deelnemers


Prijs Per Deelnemer

Testimonials (1)

Voorlopige Aankomende Cursussen

Gerelateerde categorieën