Heim Java javaLernprogramm Was sind die neuen Funktionen von jdk8?

Was sind die neuen Funktionen von jdk8?

Apr 24, 2019 pm 05:40 PM
jdk8 新特性

Zu den neuen Funktionen in JDK 8 gehören: Einführung von Lambda-Ausdrücken, Bereitstellung der Stream-API, Aktivierung von Client-TLS 1.2, Unterstützung des AEAD-Algorithmus, höhere Sicherheit, neues Modena-Design, neue Pakete usw.

Was sind die neuen Funktionen von jdk8?

Was ist neu in JDK 8

Java Platform, Standard Edition 8 ist eine funktionsreiche Hauptversion. Dieses Dokument fasst die Funktionen und Verbesserungen in Java SE 8, JDK 8 und Oracles Implementierung von Java SE 8 zusammen. Klicken Sie auf einen Komponentennamen, um eine detailliertere Beschreibung der Verbesserungen der Komponente zu erhalten.

Java-Programmiersprache

  • Lambda-Ausdrücke sind eine neue Sprachfunktion, die in dieser Version eingeführt wurde. Mit dieser Funktion können Sie Funktionen als Methodenparameter oder Code als Daten behandeln. Mithilfe von Lambda-Ausdrücken können Sie Instanzen von Einzelmethodenschnittstellen (sogenannte funktionale Schnittstellen) prägnanter darstellen.

  • Methodenverweise stellen leicht verständliche Lambda-Ausdrücke für Methoden bereit, die bereits Namen haben.

  • Standardmethoden ermöglichen das Hinzufügen neuer Funktionen zu den Schnittstellen der Bibliothek und stellen die Binärkompatibilität mit Code sicher, der für ältere Versionen dieser Schnittstellen geschrieben wurde.

  • Doppelte Annotationen unterstützen die mehrfache Anwendung desselben Annotationstyps auf dieselbe Deklaration oder Typverwendung.

  • Typanmerkungen unterstützen die Anwendung von Anmerkungen überall dort, wo ein Typ verwendet wird, nicht nur bei Deklarationen. In Kombination mit dem steckbaren Typsystem verbessert diese Funktion die Typprüfung Ihres Codes.

  • Verbesserte Typinferenz.

  • Methodenparameterreflexion.

Sammlung

  • Die neue java.util.stream-Klasse im Paket stellt eine Stream-API bereit, die Streams von unterstützt Elemente führen funktionale Operationen aus. Die Stream-API ist in die Collections-API integriert und kann Batch-Vorgänge für Sammlungen ausführen, z. B. sequentielle oder parallele Map-Reduction-Transformationen.

  • Leistungsverbesserungen für HashMap mit Schlüsselkonflikten

Kompaktes Profil

Enthält Java SE A vordefiniert Teilmenge der Plattform und unterstützt Anwendungen, die nicht die Bereitstellung und Ausführung der gesamten Plattform auf kleinen Geräten erfordern.

Sicherheit

  • Client TLS 1.2 standardmäßig aktivieren

  • Neue Änderungen an AccessController.doPrivileged Body unterstützt Code, der eine Teilmenge seiner Berechtigungen geltend macht, ohne die vollständige Stapeldurchquerung zu verhindern, um nach zusätzlichen Berechtigungen zu suchen

  • Stärkere passwortbasierte Verschlüsselungsalgorithmen

  • JSSE-Server -seitige Unterstützung für die SSL/TLS Server Name Indication (SNI)-Erweiterung

  • Unterstützung für den AEAD-Algorithmus: Der SunJCE-Anbieter wurde erweitert, um die AES/GCM/NoPadding-Verschlüsselungsimplementierung sowie den GCM-Algorithmus zu unterstützen Parameter. Der SunJSSE-Anbieter wurde außerdem erweitert, um auf dem AEAD-Modus basierende Verschlüsselungssammlungen zu unterstützen. Siehe Oracle Provider-Dokumentation, JEP 115.

  • Keystore-Verbesserungen, einschließlich des neuen Domänen-Keystore-Typs java.security.DomainLoadStoreParameter und der neuen Befehlsoption -importpassword

  • SHA-224-Nachrichtenauszug

  • Erweiterte Unterstützung für NSA Suite B-Verschlüsselung

  • Bessere Unterstützung für Hochentropie-Zufallszahlen generieren

  • Die Klasse java.security.cert.PKIXRevocationChecker wurde hinzugefügt, die zum Konfigurieren der Sperrprüfung von 🎜>

    Neuer Rcache-Typ zum Kerberos 5-Wiedergabecache hinzugefügt
  • Unterstützung für Kerberos 5-Protokollübersetzung und eingeschränkte Delegation
  • Kerberos 5 schwach Verschlüsselungstypen standardmäßig deaktiviert
  • Ungebundenes SASL für GSS-API/Kerberos 5-Mechanismus
  • SASL-Dienst für mehrere Hostnamen
  • JNI-Brücke zu nativem JGSS unter Mac OS serverseitige Cipher-Suite-Präferenzanpassung in JSSE
  • JavaFX
  • Das neue Modena-Design wurde in dieser Version implementiert .

  • Mit der neuen SwingNode-Klasse können Entwickler Swing-Inhalte in JavaFX-Anwendungen einbetten. Sehen Sie sich die SwingNode-Javadoc und die Einbettung von Swing-Inhalten in JavaFX-Anwendungen an.

Zu den neuen UI-Steuerelementen gehören DatePicker- und TreeTableView-Steuerelemente.

javafx.print-Paket stellt öffentliche Klassen für die JavaFX-Druck-API bereit. Weitere Informationen finden Sie im Javadoc.
  • Zu den 3D-Grafikfunktionen gehören jetzt 3D-Formen, Kameras, Lichter, Unterszenen, Materialien, Auswahl und Anti-Aliasing. Der JavaFX 3D-Grafikbibliothek wurden neue API-Klassen Shape3D (Box-, Zylinder-, MeshView- und Sphere-Unterklassen), SubScene, Material, PickResult, LightBase (AmbientLight- und PointLight-Unterklassen) und SceneAntialiasing-API-Klassen hinzugefügt. Die Kamera-API-Klasse wurde in dieser Version ebenfalls aktualisiert. Siehe das zugehörige Javadoc für die Klassen javafx.scene.shape.Shape3D, javafx.scene.SubScene, javafx.scene.paint.Material, javafx.scene.input.PickResult und javafx.scene.SceneAntialiasing sowie die JavaFX 3D-Grafiken Dokumentation „Erste Schritte“.
  • Die WebView-Klasse enthält neue Funktionen und Verbesserungen. Weitere Informationen zu anderen HTML5-Funktionen, einschließlich Web-Sockets, Web-Workern und Web-Schriftarten, finden Sie unter Unterstützte HTML5-Funktionen.

  • Erweiterte Textunterstützung, einschließlich bidirektionalem Text, komplexer Textskripts (z. B. Thai- und Hindi-Steuerelemente) und mehrzeiligem Text mit mehreren Stilen in Textknoten.

  • Diese Version bietet Unterstützung für Hi-DPI-Displays.

  • CSS Styleable*-Klassen sind zur öffentlichen API geworden. Weitere Informationen finden Sie im Javadoc „Javafx.css“.

  • Die neue ScheduledService-Klasse ermöglicht den automatischen Neustart von Diensten.

  • JavaFX ist jetzt für ARM-Plattformen verfügbar. Das JDK für ARM umfasst die Basis-, Grafik- und Steuerungskomponenten von JavaFX.

Tools

  • Die Nashorn-Engine kann über den jjs-Befehl aufgerufen werden.

  • Der Java-Befehl wird zum Starten von JavaFX-Anwendungen verwendet.

  • Die Java-Manpage wurde neu geschrieben.

  • Klassendateien können über das jdeps-Befehlszeilentool analysiert werden.

  • Java Management Extensions (JMX) unterstützt den Fernzugriff auf Diagnosebefehle.

  • Das Jarsigner-Tool bietet die Möglichkeit, einen signierten Zeitstempel von einer Timestamp Authority (TSA) anzufordern.

Javac-Tool

  • Die Option -parameters des Befehls javac kann zum Speichern und Aktivieren formaler Parameternamen verwendet werden die Reflection-API zum Abrufen formaler Parameternamen.

  • Der Befehl javac implementiert jetzt korrekt die Typregeln für Gleichheitsoperatoren im Abschnitt 15.21 der Java Language Specification (JLS).

  • Das Javac-Tool unterstützt jetzt die Überprüfung des Inhalts von Javadoc-Kommentaren und vermeidet so verschiedene Probleme in den Dateien, die beim Ausführen von Javadoc generiert werden, wie z. B. ungültiges HTML oder Probleme mit der Barrierefreiheit. Diese Funktion kann über eine neue Xdoclint-Option aktiviert werden. Weitere Einzelheiten finden Sie in der Ausgabe beim Ausführen von „javac -X“. Diese Funktion ist auch im Javadoc-Tool verfügbar und standardmäßig aktiviert.

  • Das Javac-Tool unterstützt jetzt die Generierung nativer Header bei Bedarf. Dadurch entfällt die Notwendigkeit, das Javah-Tool separat in der Build-Pipeline auszuführen. Diese Funktion kann in Javac mit der neuen Option -h aktiviert werden, die das Verzeichnis angibt, in das Header-Dateien geschrieben werden. Eine Header-Datei wird für annotierte Konstantenfelder für jede Klasse generiert, die über eine native Methode verfügt oder eine neue Annotation vom Typ java.lang.annotation.Native verwendet.

Javadoc-Tool

  • Das Javadoc-Tool unterstützt die neue DocTree-API, sodass Sie Javadoc-Kommentare als abstrakte Syntaxbäume verwenden können zu durchqueren.

  • Das Javadoc-Tool unterstützt die neue Javadoc Access API, sodass Sie das Javadoc-Tool direkt aus Ihrer Java-Anwendung aufrufen können, ohne einen neuen Prozess auszuführen. Weitere Informationen finden Sie auf der Seite „Neue Funktionen“ von Javadoc.

  • Das Javadoc-Tool unterstützt jetzt die Überprüfung des Inhalts von Javadoc-Kommentaren und vermeidet so verschiedene Probleme in den Dateien, die beim Ausführen von Javadoc generiert werden, wie z. B. ungültiges HTML oder Probleme mit der Barrierefreiheit. Diese Funktion ist standardmäßig aktiviert und kann mit der neuen Option -Xdoclint gesteuert werden. Weitere Einzelheiten finden Sie in der Ausgabe beim Ausführen von „javadoc -X“. Das javac-Tool unterstützt diese Funktion ebenfalls, sie ist jedoch standardmäßig nicht aktiviert.

Internationalisierung

  • Unicode-Verbesserungen, einschließlich Unterstützung für Unicode 6.2.0

  • Verwendung von Unicode-CLDR-Daten und java.locale.providers-Systemeigenschaften

  • Neue Kalender- und Gebietsschema-API

  • Unterstützung für benutzerdefinierte Ressourcenpakete, die installiert werden als Erweiterungen

Bereitstellung

  • jetzt mit URLPermission verfügbar, um Sandbox-Applets und Java Web Start-Apps eine Verbindung zurück zum Server zu ermöglichen das hat sie angefangen. SocketPermission wird nicht mehr gewährt.

  • Das Permissions-Attribut ist im JAR-Dateimanifest der Haupt-JAR-Datei auf allen Sicherheitsstufen erforderlich.

Datum-Uhrzeit-Pakete

Eine neue Reihe von Paketen, die ein umfassendes Datum-Uhrzeit-Modell bieten.

Scripting

Rhino Javascript Engine wurde durch Nashorn JavaScript Engine

Pack200

  • Pack200 unterstützt konstante Pooleinträge und neuen Bytecode, der durch JSR 292 eingeführt wurde

  • JDK8 unterstützt Klassendateiänderungen, die durch JSR-292, JSR-308 und JSR-335 spezifiziert werden

IO und NIO

  • Eine neue Solaris-orientierte SelectorProvider-Implementierung basierend auf dem Solaris-Ereignisportmechanismus. Um es zu verwenden, legen Sie den Wert der Systemeigenschaft java.nio.channels.spi.Selector auf sun.nio.ch.EventPortSelectorProvider fest.

  • Reduzieren Sie die Größe der Datei /jre/lib/charsets.jar

  • Die Leistung des Konstruktors java.lang.String(byte[], *) und der Methode java.lang.String.getBytes() wurde verbessert.

java.lang- und java.util-Pakete

  • Parallele Array-Sortierung

  • Standardcodierung und -decodierung Base64

  • Unterstützung für vorzeichenlose Arithmetik

JDBC

  • JDBC-ODBC-Brücke entfernt.

  • JDBC 4.2 führt neue Funktionen ein.

Java DB

JDK 8 enthält Java DB 10.10.

Netzwerk

  • Die Klasse java.net.URLPermission wurde hinzugefügt.

  • Wenn in der Klasse java.net.HttpURLConnection ein Sicherheitsmanager installiert ist, erfordert der Aufruf, der das Öffnen der Verbindung anfordert, Berechtigungen.

Parallelität

  • Einige neue Klassen und Schnittstellen wurden dem Paket java.util.concurrent hinzugefügt.

  • Einige neue Methoden wurden zur Klasse java.util.concurrent.ConcurrentHashMap hinzugefügt, um Aggregationsvorgänge basierend auf neuen Stream-Tools und Lambda-Ausdrücken zu unterstützen.

  • Neue Klassen wurden zum Paket java.util.concurrent.atomic hinzugefügt, um erweiterbare und aktualisierbare Variablen zu unterstützen.

  • Einige neue Methoden wurden zur Klasse java.util.concurrent.ForkJoinPool hinzugefügt, um universelles Pooling zu unterstützen.

  • Die neue Klasse java.util.concurrent.locks.StampedLock bietet eine funktionsbasierte Sperre, die den Lese-/Schreibzugriff über drei Modi steuern kann.

Java XML - JAXP

HotSpot

  • Neue Hardware-Intrinsics um den Advanced Encryption Standard (AES) zu verwenden. Die Flags „UseAES“ und „UseAESIntrinsics“ ermöglichen hardwarebasierte AES-Intrinsics für Intel-Hardware. Bei der Hardware muss es sich um Westmere-Hardware aus dem Jahr 2010 oder neuer handeln. Um beispielsweise Hardware-AES zu aktivieren, verwenden Sie die folgenden Flags:

  • -XX:+UseAES -XX:+UseAESIntrinsics

  • Um Hardware-AES zu deaktivieren, verwenden Sie die folgenden Flags:

  • -XX:-UseAES -XX:-UseAESIntrinsics

  • PermGen entfernt . Die von der Methode

  • aufgerufenen Bytecode-Anweisungen unterstützen die Standardmethoden in der Programmiersprache Java.

Versionshinweise zu Java Mission Control 5.3

JDK 8 enthält Java Mission Control 5.3.

Das obige ist der detaillierte Inhalt vonWas sind die neuen Funktionen von jdk8?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP 8.3 veröffentlicht: Neue Features auf einen Blick PHP 8.3 veröffentlicht: Neue Features auf einen Blick Nov 27, 2023 pm 12:52 PM

PHP8.3 veröffentlicht: Überblick über neue Funktionen Da sich die Technologie weiterentwickelt und sich ändern muss, werden Programmiersprachen ständig aktualisiert und verbessert. PHP ist eine in der Webentwicklung weit verbreitete Skriptsprache und wurde ständig verbessert, um Entwicklern leistungsfähigere und effizientere Tools zur Verfügung zu stellen. Die kürzlich veröffentlichte PHP 8.3-Version bringt viele lang erwartete neue Funktionen und Verbesserungen. Werfen wir einen Blick auf einen Überblick über diese neuen Funktionen. Initialisierung von Nicht-Null-Eigenschaften Wenn in früheren Versionen von PHP einer Klasseneigenschaft nicht explizit ein Wert zugewiesen wurde, ist es ihr Wert

Ein Leitfaden zum Erlernen der neuen Funktionen von PHP8 und zum Erwerb eines tiefgreifenden Verständnisses der neuesten Technologie Ein Leitfaden zum Erlernen der neuen Funktionen von PHP8 und zum Erwerb eines tiefgreifenden Verständnisses der neuesten Technologie Dec 23, 2023 pm 01:16 PM

Eine ausführliche Analyse der neuen Funktionen von PHP8, um Ihnen zu helfen, die neueste Technologie zu beherrschen. Im Laufe der Zeit hat sich die Programmiersprache PHP ständig weiterentwickelt und verbessert. Die kürzlich veröffentlichte PHP8-Version bietet Entwicklern viele spannende neue Funktionen und Verbesserungen, die unsere Entwicklungsarbeit komfortabler und effizienter machen. In diesem Artikel analysieren wir die neuen Funktionen von PHP8 eingehend und stellen spezifische Codebeispiele bereit, die Ihnen helfen, diese neuesten Technologien besser zu beherrschen. Der JIT-Compiler PHP8 führt die JIT-Kompilierung (Just-In-Time) ein

Neue Redis-Erweiterung in PHP8.1 eingeführt Neue Redis-Erweiterung in PHP8.1 eingeführt Jul 07, 2023 pm 09:41 PM

Die in PHP8.1 eingeführte neue Redis-Erweiterung Mit der rasanten Entwicklung des Internets müssen große Datenmengen gespeichert und verarbeitet werden. Um die Effizienz und Leistung der Datenverarbeitung zu verbessern, ist Caching zu einem unverzichtbaren Bestandteil geworden. In der PHP-Entwicklung wird Redis als leistungsstarkes Schlüsselwertspeichersystem häufig in Caching- und Datenspeicherszenarien eingesetzt. Um die Erfahrung bei der Verwendung von Redis in PHP weiter zu verbessern, führt PHP8.1 eine neue Redis-Erweiterung ein. In diesem Artikel werden die neuen Funktionen dieser Erweiterung vorgestellt und bereitgestellt

Interpretation neuer Funktionen der Go-Sprache: effizientere Programmierung Interpretation neuer Funktionen der Go-Sprache: effizientere Programmierung Mar 10, 2024 pm 12:27 PM

[Interpretation neuer Funktionen der Go-Sprache: Um die Programmierung effizienter zu gestalten, sind spezifische Codebeispiele erforderlich.] In den letzten Jahren hat die Go-Sprache im Bereich der Softwareentwicklung große Aufmerksamkeit auf sich gezogen, und ihr einfaches und effizientes Designkonzept hat immer mehr Aufmerksamkeit erregt Entwickler. Als statisch typisierte Programmiersprache führt die Go-Sprache weiterhin neue Funktionen ein, um die Entwicklungseffizienz zu verbessern und den Code-Schreibprozess zu vereinfachen. In diesem Artikel werden die neuesten Funktionen der Go-Sprache ausführlich erläutert und anhand spezifischer Codebeispiele erläutert, wie Sie den Komfort dieser neuen Funktionen erleben können. Modulare Entwicklung (GoModules) Go-Sprache ab 1

Was sind die neuen Funktionen von PHP8? Was sind die neuen Funktionen von PHP8? Sep 25, 2023 pm 01:34 PM

Zu den neuen Funktionen von PHP8 gehören JIT-Compiler, Typableitung, benannte Parameter, Union-Typen, Eigenschaften, Verbesserungen bei der Fehlerbehandlung, Unterstützung für asynchrone Programmierung, neue Standardbibliotheksfunktionen und anonyme Klassenerweiterungen. Detaillierte Einführung: 1. JIT-Compiler, PHP8 führt den JIT-Compiler ein, der eine wichtige Leistungsverbesserung darstellt. Der JIT-Compiler kann einige hochfrequente Ausführungscodes in Echtzeit kompilieren und optimieren, wodurch die Ausführungsgeschwindigkeit verbessert wird führt die Typinferenzfunktion ein, die es Entwicklern ermöglicht, beim Deklarieren von Variablen usw. automatisch den Typ von Variablen abzuleiten.

Ein Überblick über die neuen Funktionen von CSS3: So erzielen Sie mit CSS3 Übergangseffekte Ein Überblick über die neuen Funktionen von CSS3: So erzielen Sie mit CSS3 Übergangseffekte Sep 09, 2023 am 11:27 AM

Übersicht über die neuen Funktionen von CSS3: So erzielen Sie mit CSS3 Übergangseffekte. CSS3 ist die neueste Version von CSS. Unter den vielen neuen Funktionen dürfte der Übergangseffekt die interessanteste und praktischste sein. Übergangseffekte können unsere Seiten während der Interaktion flüssiger und schöner machen und den Benutzern ein gutes visuelles Erlebnis bieten. In diesem Artikel wird die grundlegende Verwendung von CSS3-Übergangseffekten mit entsprechenden Codebeispielen vorgestellt. Attribut „transition-property“: Geben Sie den CSS-Eigenschaftsübergangseffekt an, der überführt werden muss

Überblick über die neuen Funktionen von CSS3: So verwenden Sie CSS3, um ein horizontal zentriertes Layout zu erreichen Überblick über die neuen Funktionen von CSS3: So verwenden Sie CSS3, um ein horizontal zentriertes Layout zu erreichen Sep 09, 2023 pm 04:09 PM

Überblick über die neuen Funktionen von CSS3: So verwenden Sie CSS3, um ein horizontal zentriertes Layout zu erreichen. Bei Webdesign und -layout ist ein horizontal zentriertes Layout eine häufige Anforderung. In der Vergangenheit haben wir dazu oft komplexe JavaScript- oder CSS-Tricks eingesetzt. Mit CSS3 wurden jedoch einige neue Funktionen eingeführt, die horizontal zentrierte Layouts einfacher und flexibler machen. In diesem Artikel werden einige neue Funktionen von CSS3 vorgestellt und einige Codebeispiele bereitgestellt, um zu veranschaulichen, wie Sie mit CSS3 ein horizontal zentriertes Layout erreichen. 1. Verwenden Sie Flexbox zum Layouten der Datei

Was sind die neuen Funktionen der Go-Sprache? Was sind die neuen Funktionen der Go-Sprache? Aug 24, 2023 pm 01:36 PM

Die neuen Funktionen der Go-Sprache sind: 1. Go-Modul, das zum Verwalten der Abhängigkeiten von Go-Sprachprojekten verwendet wird. 2. Fehlerbehandlung, Hinzufügen eines neuen Fehlertyps, wodurch die Fehlerbehandlung flexibler und präziser wird. 3. Kontextpaket, verwendet zum Übertragen von Anforderungsbereichswerten zwischen Goroutinen; 4. Einbettung, das heißt, eine Struktur kann in eine andere Struktur eingebettet werden. 5. Synchronisierungspaket, um die Synchronisation und Kommunikation zwischen Goroutinen besser zu steuern 7. Generika ermöglichen es Entwicklern, flexibler zu schreiben.

See all articles