Introduction du guide de programmation Java de nouvelle génération (Java 11)

Cet article est la suite du Introduction au guide de programmation Java de nouvelle génération (Java 10).

Changements dans Java 11

Dans Java 11, les 6 suivants sont écrits.

Syntaxe de variable locale pour les paramètres lambda

Vous pouvez désormais utiliser var avec des paramètres d'expression Lambda dans Java 11. Certains peuvent se demander: "Oh? Les paramètres de l'expression Lambda ne devaient pas nécessairement avoir une déclaration de type à l'origine?" Certainement dans la formule Lambda

(int age) -> x > 100;
(age) -> x > 100;
x -> x > 100;

La spécification de type est omise sauf pour la première. Et le fait que var peut être utilisé comme paramètre

(var age) -> x > 100;

Cela signifie que vous pouvez écrire comme ça. Au fait, lors de l'utilisation de var

var age -> x > 100;

Vous ne pouvez pas omettre «()» comme dans. Il n'y a aucun intérêt à utiliser var dans l'exemple précédent, mais l'utilisation de var permet d'ajouter des * annotations sans * déclaration de type. En d'autres termes

@Nullable var name -> name.length() > 32;

Cela signifie que vous pouvez écrire quelque chose comme ça. Si var n'était pas disponible, nous ne pourrions pas utiliser d'annotations sans une déclaration de type concrète. Le livre explique ces histoires en détail.

Epsilon GC-Amélioration de Garbage Collector

Epsilon GC est un "GC qui ne ramasse pas les ordures". Cela semble un peu incohérent, mais Epsilon GC libère de la mémoire, donc si votre application manque de mémoire de tas, la JVM se fermera avec le familier ʻOutOfMemoryError`. Il s'agit du GC Epsilon, mais certaines situations sont utiles.

API client HTTP

Elle apparaît comme une bibliothèque non standard dans Java 9, a été modifiée dans Java 10 et détaille l'API client HTTP normalisée dans Java 11. Java a la classe HttpURLConnection depuis l'ère 1.1, mais à partir de l'explication des raisons pour lesquelles le développement d'une nouvelle bibliothèque HTTP a été fait, la liste des méthodes de chaque classe et l'exemple d'exemples de code concrets, du contenu de base au concret Il est expliqué de manière très détaillée. Je pense que le contenu est facile à comprendre, même pour les développeurs qui ne développent généralement pas à l'aide de clients HTTP.

ZGC-Latence inférieure et évolutivité améliorée

Ceci est une description de ZGC (Z Garbage Collector) publié en tant que GC expérimental pour Java 11. Explique les fonctionnalités et le mécanisme de ZGC qui promet que le délai d'application ne dépasse pas 10 mm, des exemples de commandes et des options pour utiliser réellement ZGC.

Enregistreur de vol et contrôle de mission

En fait, utilisez JFR (Java Flight Recorder), qui est un profileur hautes performances et à faible coût intégré intégré à la JVM, et JMC (Java Mission Control), qui est un outil d'analyse des données enregistrées par JFF, comme tutoriel. Il est expliqué à l'aide d'un exemple. Cette connaissance sera utile pour rechercher la cause lorsque l'application plante ou se comporte de manière inattendue.

Autres améliorations du JDK 11

D'autres améliorations sont décrites dans les éléments suivants.

Tous sont brièvement expliqués, mais vous devez être conscient de certaines fonctionnalités utiles (surtout si vous n'utilisez pas l'EDI), comme le lancement d'un programme de code source de fichier unique.

Il s'agit de l'introduction du guide de programmation Java de nouvelle génération (Java 11).

Recommended Posts

Introduction du guide de programmation Java de nouvelle génération (Java 10)
Introduction du guide de programmation Java de nouvelle génération (Java 11)
Introduction du guide de programmation Java de nouvelle génération (Java 12)
Introduction du guide de programmation Java nouvelle génération (projet d'extension du langage Java édition "Amber")
[Java] Nouvelle méthode de génération de threads (2)
[Java] Nouvelle méthode de génération de threads (1)
Introduction à la programmation fonctionnelle (Java, Javascript)
Résumé de la programmation orientée objet utilisant Java
[Java] Introduction
Mémorandum du nouveau diplômé SES [Java basics]
Guide de style de programmation Java pour l'ère Java 11
Sortie du livre "Introduction à Java"
J'ai écrit EX25 du guide de programmation AtCoder pour les débutants (APG4b) en java.
Introduction de pay.jp
L'histoire de l'apprentissage de Java dans la première programmation
Introduction de milkode
JAVA: réalise la génération et la numérisation de divers types de codes à barres
Génération de séquence Java
Mémorandum du nouveau diplômé SES [édition orientée objet Java]
java1.8 nouvelles fonctionnalités
Programmation générique java
[Java] Introduction à Java
Introduction à Java
[Introduction à Java] Bases de l'arithmétique Java (pour les débutants)
Utilisons Java New FileIO! (Introduction, pour les débutants)
[Java] Présentation de Java
Expérience de réussite de Java Silver en tant que nouveau diplômé
Introduction à Java pour les débutants Connaissance de base du langage Java ①
Apprentissage rapide de Java "Introduction?" Partie 3 Parler de programmation
Caractéristiques prévues de Java
Résumé des nouvelles fonctionnalités de Java 12
Programmation par contraintes en Java
[Java] Importance de serialVersionUID
Introduction de Docker - Partie 1--
Avis sur Java Shilber
Résumé des nouvelles fonctionnalités de Java 13
[Java] Génération de flux API-Stream
[Rails] Présentation de PAY.JP
java --Unification des commentaires
Bases de la programmation Java Practice-array
Histoire des annotations Java
java (mérites du polymorphisme)
Programmation Java (méthode de classe)
Introduction à la programmation pratique
[Java] Génération de mot de passe (Pasay)
Introduction de l'authentification des utilisateurs
Examen NIO de Java
Introduction à la commande java
Programmation Java (structure de classe)
Tout sur la programmation Java
Résumé des nouvelles fonctionnalités de Java 10
mémo de programmation du concours java
[Java] Trois fonctionnalités de Java
Résumé des nouvelles fonctionnalités de Java 14
Nouveautés de Java 9,10,11
Résumé du support Java 2018
Thread de programmation Java exécutable
Réintroduction à Java for Humanities 0: Comprendre l'acte de programmation
[Introduction à Java] Gestion des chaînes de caractères (classe String, classe StringBuilder)