Was ist JShell? JShell (Java Shell) bringt REPL (Read-Eval-Print Loop) nach Java: Code-Schnipsel eingeben, sofort ausführen, Ergebnis sehen – ohne javac/java Zyklus. Ideal für Exploration, Prototyping, Learning & schnelle Tests. Starten & Grundlagen Wichtige JShell-Befehle Befehl Funk
Was ist ein Modul? Ein Modul ist eine benannte, selbstbeschreibende Sammlung von Code & Daten. Es definiert explizit: Welche Pakete es exportiert (öffentlich API). Von welchen anderen Modulen es abhängt (requires). Welche Services es nutzt oder bereitstellt. Neue Phasen & Tools Link Time
Lokale Installation JDK 9 herunterladen: Oracle Archive oder OpenJDK 9 (nur noch historisch; für neue Projekte Java 17/21 LTS nutzen). Installieren: OS-spezifischen Installer/Archiv ausführen. Umgebungsvariablen: JAVA_HOME setzen, PATH um $JAVA_HOME/bin erweitern. Windows (10/11) „Dieser PC“ → E
Hauptziele von Java 9 Modularität: JDK & Java SE Plattform modularisieren (skalierbar bis zu kleinen Geräten). Sicherheit: Gesamte JDK-Sicherheit verbessern. Build & Wartung: Build-Prozess & Pflege großer Codebasen vereinfachen (SE & EE). Standard-Modulsystem: Einheitliches Modulsys
JEP 312 – Thread-Local Handshakes Hintergrund: Globale Safepoints Die HotSpot VM nutzt globale Safepoints, um alle Application-Threads anzuhalten (z. B. für GC, Deoptimierung, Biased Locking Revocation). Alle Threads müssen an einem sicheren Punkt anhalten – das kostet Zeit und skaliert schlecht be
JEP 319 – Root Certificates Das Problem vor Java 10 Der cacerts Keystore in OpenJDK-Builds war leer. Ohne Root-CAs schlagen TLS-Verbindungen fehl (z. B. HTTPS-Requests, Maven-Downloads, Docker-Image-Pulls). Entwickler mussten manuell Zertifikate importieren (keytool -importcert) oder Oracle JDK nu
JEP 296 – Consolidate the JDK Forest into a Single Repository Situation in JDK 9 JDK 9 bestand aus acht separaten Repositories (Forests): root (Build-Infra) corba hotspot (VM) jaxp (XML Processing) jaxws (Web Services) jdk (Core Libraries, Tools) langtools (Compiler, Javadoc, JShell) nashorn (Java
JEP 316 – Heap Allocation on Alternative Memory Devices Moderne Hardware bietet Non-Volatile DIMMs (NV-DIMM / Persistent Memory): byte-adressierbar, persistent, große Kapazität. Java 10 erlaubt, den Java-Heap auf solchen Geräten zu platzieren. Neue VM-Option -XX:AllocateHeapAt=<pfad> Der Pfad
JEP 314 – Additional Unicode Language-Tag Extensions Java 7 führte BCP 47 Language Tags ein, aber Unicode-Locale-Erweiterungen waren auf Kalender und Zahlen beschränkt. Java 10 aktualisiert java.util.Locale und zugehörige Klassen gemäß LDML-Spezifikation um folgende Erweiterungen: Key Bedeutung
JEP 304 – Garbage-Collector Interface Vor Java 10 war GC-Implementierungscode über die Codebase verstreut und schwer austauschbar. JEP 304 führt eine saubere GC-Interface ein: Alternative GC-Implementierungen können als Plugins eingebunden werden. Codebase-Isolation: GC-Logik gekapselt, leichter wa
Problem: Langsamer JVM-Start Beim Start lädt die JVM tausende Klassen – bei Microservices/Serverless-Funktionen (Cold Start) ein messbarer Overhead. Class-Data Sharing (CDS) existiert seit Java 5, aber nur für Bootstrap-Klassen (rt.jar / JDK-Module). JEP 310: Application Class-Data Sharing Java 10
JEP 317 – Experimental Java-Based JIT Compiler Der klassische JIT-Compiler (C2) ist in C++ implementiert. Java 10 führt Graal ein: einen in Java geschriebenen, experimentellen JIT-Compiler, der über die JVM Compiler Interface (JVMCI) (eingeführt in Java 9) in die HotSpot VM eingebunden wird. Aktivi
In Java 10 als forRemoval=true markiert (Deprecated für Entfernung) 1. SNMP Monitoring Support Modul jdk.snmp (SNMP Monitoring & Management für JVM) ist deprecated und für Entfernung markiert. 2. java.security Legacy-Klassen Folgende Klassen sind deprecated (forRemoval=true): java.security.Ce
Entfernt in Java 10 Java 10 bereinigt das JDK konsequent: Veraltete, unsichere oder obsolette Bestandteile wurden endgültig entfernt. Look & Feel (Swing) Alt (entfernt) Neu (ersetzen durch) com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel javax.swing.plaf.nimbus.NimbusLookAndFeel apple
Wichtigste API-Erweiterungen in Java 10 1. Optional.orElseThrow() Neue Methode in java.util.Optional, OptionalInt, OptionalLong, OptionalDouble. Bevorzugte Alternative zu get(), da sie explizit ein NoSuchElementException wirft (statt undokumentiertem Verhalten). new MyException(Fehlend)); 2. Unmo
Was ist Local Variable Type Inference? Ab Java 10 können lokale Variablen mit var deklariert werden, ohne den Typ explizit anzugeben. Der Compiler leitet den Typ vom Initialisierungsausdruck ab. Dies gilt nur für lokale Variablen in Methoden, Initialisierungsblöcken, for-Schleifen, try-with-resource
JEP 322 – Time-Based Release Versioning Ab Java 10 folgt Oracle einem strengen, zeitbasierten Versionsmodell: Feature Release alle 6 Monate (März & September) – neue Sprach-/JVM-Features, APIs, Deprecations. Update Release quartalsweise (Jan, Apr, Jul, Okt) – Bugfixes, Security-Patches, Regress
Online-Compiler (Live Demo) Viele Beispiele können direkt im Browser kompiliert und ausgeführt werden – ideal zum schnellen Testen ohne lokale Installation. Lokale Installation JDK herunterladen: Oracle JDK oder OpenJDK (empfohlen). Passende Version für Ihr OS wählen. Installieren: Installer (.exe
Neues Release-Modell: 6-Monate-Zyklus & LTS Java 10 (erschienen 20. März 2018) markiert den Übergang zu einem zeitbasierten Release-Modell: alle 6 Monate ein neues Feature-Release (März & September). Alle 3 Jahre (ab Sept. 2018) erscheint ein LTS-Release (Long Term Support) mit 3 Jahren Supp
Die Java-Sprache unterstützt drei Arten von Kommentaren: Nr.Kommentar & Beschreibung 1/* Text */ – Der Compiler ignoriert alles von /* bis */. (Mehrzeilig) 2//Text – Der Compiler ignoriert alles von // bis zum Zeilenende. (Einzeilig) 3/** Dokumentation */ – Dies ist ein Dokumentationskomme
Java
Hierarchische ZSM-5 Zeolithe mit außergewöhnlicher Mesoporosität und katalytischer Leistung: Ein neuartiger Weichtemplate-Ansatz
Mark Two auf SolidWorks World 2016 enthüllt – Schneller, stärker, smarter 3D-Druck
Solarselbstbau: Schritt-für-Schritt-Anleitung zur Photovoltaik-Zelle
5 wesentliche CNC-Bearbeitungstrends 2021 im Blick