Ein neuer Ingenieur ging zu JJUG ~ "Java SE 10 / JDK 10 Release Special Feature" (26.03.2018 (Montag)) ~

JJUG-Nachtseminar "Java SE 10 / JDK 10 Release Special" (Montag, 26. März 2018)

Ankündigung des JDK-Release-Modells

Mark Reinhold wird am nächsten Java Day Tokyo zu einem Grundvortrag nach Japan kommen! .. Die Registrierungsseite wird bald geöffnet!

JDK Überprüfung des neuen Release-Modells

Vielen Dank für die Inferenz des lokalen Variablentyps JDK10, David Buck

Aktueller Standort

Inferenz des lokalen Variablentyps


Arraylist<String> list = new ArrayList<>();
Stream<String> stream = list.stream();

//Wird kommen, um so anzurufen
var list = new new ArrayList<>();
var stream = = list.stream();

** Beachten Sie, dass die Typinferenz nicht dynamisch typisiert wird !!! **

Warum jetzt?

--java betonte die Lesbarkeit gegenüber der Schreibbarkeit

Warum nur lokale Variablen?

Wie benutzt man

var hogehoge = new Object() {
    public void say(){~}
}

hogehoge.say();

Was ist var?

--Reservierte Wörter? Schlüsselwörter? --const und goto sind reservierte Wörter, aber keine Schlüsselwörter

int var = 1; ... ok

class var {

}... ng

var var = var();Kompilieren Sie Pässe! 

Wie codiere ich?

--Veröffentlichter OPEN JDK Style Guide ――Ich schreibe, wann ich var verwenden soll

  1. Lesbarkeit statt Beschreibbarkeit. Nur bei Verwendung von var verwenden, um das Lesen zu erleichtern
  2. Wenn Sie mit lokalem Code verstehen können
  3. Verlassen Sie sich nicht auf Tools wie IDEs, sagen Sie nicht, dass es in Ordnung ist, weil Sie es sehen können, indem Sie mit der Maus schauen!
  4. Es war ein Kompromiss, den Typ explizit zu deklarieren, und die Richtlinie bestand darin, Lambda-Ausdrücke und keine anonymen inneren Klassen zu verwenden. Diesmal ist es aber nicht der Fall. Das Schreiben aller lokalen Variablen in var ist unterschiedlich
  1. Verwenden Sie Variablennamen, die nützliche Informationen darstellen
  2. Begrenzen Sie den Umfang lokaler Variablen
  3. Erwägen Sie die Verwendung von var, wenn Sie den Typ nur aus der Initialisierung kennen
  4. Verwenden Sie var, um aufeinanderfolgende Anrufe zu zerlegen (häufig in Stream).
  5. Sie müssen sich nicht um die Schnittstellenprogrammierung kümmern (Programmierung auf die Schnittstelle)
    var List = new ArrayList<>();
    
  6. Seien Sie vorsichtig, wenn Sie den Diamantoperator und die generische Methode verwenden.
  7. Seien Sie vorsichtig, wenn Sie mit Literalen arbeiten.

Andere

NTT OSS Center Yuji Kubota Kishida "Wie wird Java 10 unser Leben verändern?"

Yushi Kubota Kishida-san

12 neue Funktionen

--Docker verfügt über nützlichere APIs

Informationssammlung von java10

Kommerzielle Funktionen des Oracle JDK

  1. AppCDS
  2. Resource Management
  3. Java Flight Recorder
  4. Java Misson Control

Unvereinbarkeit

--forRemoval = true wird in der nächsten Version oder später entfernt

Verbesserungen für Docker-Container

API

javadoc

Das, Eindruck

»Was ich dachte, ich musste mich von nun an erinnern

Recommended Posts

Ein neuer Ingenieur ging zu JJUG ~ "Java SE 10 / JDK 10 Release Special Feature" (26.03.2018 (Montag)) ~
[* Java *] Ich ging zum JJUG CCC 2017 Herbst
Senden Sie mir eine Roadmap, um ein vollwertiger Java-Ingenieur zu werden
[Java] So unterbrechen Sie eine Zeile mit StringBuilder
Zusammenfassung der neuen Funktionen von Java 12
Zusammenfassung der neuen Funktionen von Java 13
Zusammenfassung der neuen Funktionen von Java 10
Zusammenfassung der neuen Funktionen von Java 14