Optional is een container-object dat gebruikt wordt om niet-null objecten te bevatten. Een Optional-object vertegenwoordigt een afwezige waarde in plaats van null. Deze klasse biedt diverse hulpmethoden om waarden te hanteren als beschikbaar of niet beschikbaar in plaats van null-controles uit te vo
Stream is een nieuwe abstracte laag geïntroduceerd in Java 8. Met streams kunt u data op een declaratieve manier verwerken, vergelijkbaar met SQL-statements. Bijvoorbeeld, de volgende SQL-statement: SELECT max(salary), employee_id, employee_name FROM Employee Deze SQL-expressie retourneert automatis
Java 8 introduceert het concept van default-methode-implementatie in interfaces. Deze mogelijkheid is toegevoegd voor backward compatibility, zodat oude interfaces de lambda-expressie-mogelijkheden van Java 8 kunnen benutten. Bijvoorbeeld, de List- of Collection-interfaces hebben geen forEach-metho
Functionele interfaces hebben een enkele functionaliteit. Bijvoorbeeld, Comparable met de ene methode compareTo voor vergelijking. Java 8 definieert veel functionele interfaces in het pakket java.util.function voor uitgebreid gebruik in lambda-expressies. Hieronder de lijst: Nr. Interface &
Methode-referenties helpen om naar methodes te wijzen via hun naam. Een methode-referentie wordt beschreven met het symbool ::. Een methode-referentie kan wijzen naar: Statische methodes Instantie-methodes Constructors met de new-operator (bijv. TreeSet::new) Methode-referentie Voorbeeld Maak het
Lambda-expressies zijn in Java 8 geïntroduceerd en worden beschouwd als de grootste feature van Java 8. Lambda-expressies faciliteren functioneel programmeren en vereenvoudigen de ontwikkeling aanzienlijk. Syntaxis Een lambda-expressie wordt gekenmerkt door de volgende syntaxis: expression body B
Lokale omgeving instellen Als u uw eigen omgeving voor Java wilt instellen, volgt u deze stappen. Java SE kan gratis gedownload worden via: https://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html Kies een versie gebaseerd op uw besturingssysteem. Volg de installatie-instruct
JAVA 8 is een grote functierelease van de Java-programmeertaal. De initiële versie werd uitgebracht op 18 maart 2014. Met Java 8 biedt Java ondersteuning voor functioneel programmeren, een nieuwe JavaScript-engine, nieuwe APIs voor datum/tijd-manipulatie, een nieuwe streaming API, etc. Nieuwe Featu
De CompletableFuture-klasse werd in Java 8 geïntroduceerd om een Future te vertegenwoordigen die door het instellen van waarde en status expliciet voltooid kan worden. Het kan gebruikt worden als java.util.concurrent.CompletionStage. Het ondersteunt afhankelijke functies en acties die getriggerd wor
Met Java 9 is een nieuwe multi-resolution image API geïntroduceerd die meerdere afbeeldingen met verschillende resolutievarianten ondersteunt. Deze API stelt een set afbeeldingen met verschillende resoluties in als een enkele multi-resolution image. De belangrijkste operaties zijn: Image getResolut
De Optional-klasse werd in Java 8 geïntroduceerd om null-checks en NullPointerException-problemen te vermijden. In Java 9 zijn drie nieuwe methodes toegevoegd om de functionaliteit te verbeteren: stream() ifPresentOrElse() or() stream() methode Syntaxis public Stream<T> stream() Als een waa
De diamond-operator (<>) werd in Java 7 geïntroduceer om code leesbaarder te maken, maar kon niet met anonieme inner classes gebruikt worden. In Java 9 kan dit wel, wat code vereenvoudigt en leesbaarheid verbetert. Hieronder code voor Java 9: Tester.java (voor Java 9) public class Tester {
De @Deprecated-annotatie werd in Java 5 geïntroduceerd. Een programma-element gemarkeerd met @Deprecated betekent dat het niet gebruikt moet worden om een van de volgende redenen: Gebruik kan leiden tot fouten. Het kan in toekomstige versies incompatibel zijn. Het kan in een toekomstige versie verw
De try-with-resources-statement is een try-statement met één of meer resources die declaratief worden afgesloten. Een resource is een object dat gesloten moet worden zodra het niet meer nodig is. De statement garandeert dat elke resource wordt afgesloten na afloop. Elk object dat java.lang.AutoClose
Streams werden in Java geïntroduceerd om ontwikkelaars te helpen aggregate operaties uit te voeren op een reeks objecten. Met Java 9 zijn er extra methodes toegevoegd om streams krachtiger te maken. takeWhile(Predicate Interface) Syntaxis default Stream<T> takeWhile(Predicate<? super T>
In Java 9 is de Process API, verantwoordelijk voor het controleren en beheren van besturingssysteemprocessen, aanzienlijk verbeterd. De ProcessHandle-klasse biedt nu: native proces-ID, starttijd, geaccumuleerde CPU-tijd, argumenten, commando, gebruiker, parent-proces en nakomelingen. ProcessHandle b
Voor Java 8 konden interfaces alleen: Constanten Abstracte methodes Geen methode-implementaties (default implementaties) waren mogelijk. Zie het voorbeeld: public class Tester { public static void main(String []args) { LogOracle log = new LogOracle(); log.logInfo(); log.logWarn
Met Java 9 zijn nieuwe factory-methoden toegevoegd aan de List, Set en Map-interfaces om onveranderlijke instanties te maken. Deze methoden zijn convenience factory methods om collecties minder verbose en beknopter aan te maken. Oude manier om collecties aan te maken import java.util.ArrayList; imp
In Java 9 is het JAR-formaat verbeterd zodat verschillende versies van Java-klassen of resources bewaard en gebruikt kunnen worden afhankelijk van het platform. In de JAR bevat het MANIFEST.MF-bestand in de hoofsectie de entry Multi-Release: true. De META-INF-directory bevat een versions-subdirector
Java-documentatie kan gegenereerd worden met het javadoc-tool. Standaard genereert het HTML 4.0-formaat. In Java 9 kunt u HTML 5-documentatie genereren met de -html5-optie in de commandoregelargumenten. Oude stijl Java-documentatie Beschouw de volgende code in C:/JAVA: Tester.java /** * @author Ma
Java