Pleiades All in One Eclipse 2020-03 est sorti. Essayons les nouvelles fonctionnalités pour la migration de l'actuel Java 11 LTS vers le Java 17 LTS en 2021. Java Full Edition de Pleiades All in One est juste décompressé, il n'est pas nécessaire d'installer Java ou de définir des variables d'environnement, et divers paramètres d'Eclipse sont automatiquement définis, vous pouvez donc immédiatement utiliser Java 14 avec Eclipse japonais. Je vais.
** Pléiades tout en un téléchargement ** http://mergedoc.osdn.jp/
Sélectionnez simplement 14 des Java 6, 7, 8, 11, 14 configurés par défaut. Aucun téléchargement Java ou paramètre de chemin d'installation n'est requis.
Si vous souhaitez utiliser la fonction d'aperçu non standard, définissez les propriétés du projet. Projet> Clic droit> Propriétés
C'est une fonction qui existe depuis longtemps, mais si vous collez simplement le texte du code source Java directement sous src dans l'arborescence de l'explorateur de packages au lieu d'un fichier, le comportement suivant sera facile. Vous n'avez pas besoin de cliquer avec le bouton droit sur Nouveau> Classe> Boîte de dialogue.
Exemple de code pour les commutateurs, les enregistrements, les blocs de texte et les correspondances de modèles. Il est composé d'une seule classe afin qu'il soit facile à coller et à essayer.
import static java.lang.System.*;
import java.time.Month;
class Demo {
public static void main(String[] args) {
//--------------------------------------------------
// switch (Norme Java 14)
{
//Étiquettes multiples-résultat: "Hello\nWorld\n"
var i = 1;
switch (i) {
case 0, 1, 2: out.println("Hello");
default : out.println("World");
}
}
{
//La Flèche-résultat: Hello
var i = 2;
switch (i) {
case 2 -> out.println("Hello");
default -> out.println("World");
}
}
{
//changer d'expression-résultat:Grande lune
var month = Month.MARCH;
String day = switch(month) {
case APRIL, FEBRUARY, JUNE, NOVEMBER, SEPTEMBER -> "Petite lune";
case AUGUST, DECEMBER, JANUARY, JULY, MARCH, MAY, OCTOBER -> "Grande lune";
};
out.println(day);
}
//--------------------------------------------------
//record (aperçu Java 14)
{
//Définition de l'enregistrement interne
record Point(int x, int y) {}
//génération automatique de getter-résultat: 10
out.println(new Point(10, 20).x());
//Génération automatique toString-résultat: Point[x=10, y=20]
out.println(new Point(10, 20));
//équivaut à une génération automatique-résultat: true
out.println(new Point(10, 20).equals(new Point(10, 20)));
}
//--------------------------------------------------
//Bloc de texte (aperçu Java 14 secondes)
{
//résultat: "Hello\n World"
String s = """
Hello
World
""";
System.out.println(s);
}
//--------------------------------------------------
//correspondance de modèle instanceof (aperçu Java 14)
{
//Attribuer avec instanceof-résultat: 3
Object object = 1;
if (object instanceof Integer i) {
out.println(i + 2);
}
//Condition combinée de type et de valeur
if (object instanceof Integer i && i == 1) {
out.println(i);
}
}
//--------------------------------------------------
//NullPointerException Sortie détaillée (norme Java 14)
//Dans l'argument VM de la configuration d'exécution-XX:+Ajout de ShowCodeDetailsInExceptionMessages
//résultat:
/*
Exception in thread "main" java.lang.NullPointerException:
Cannot invoke "String.length()" because "s" is null
at Demo.main(Demo.java:78)
*/
{
String s = null;
s.length();
}
}
}
Recommended Posts