Le quartierJV JavaPièce 7/7Mémo

Java

Le mémo de Java 25 : commandes, types, structures de contrôle, classes, records, interfaces, collections et exceptions.

Ce mémo résume l'essentiel de Java 25, la version LTS actuelle. Chaque section renvoie au cours qui l'explique en détail.

Commandes

CommandeEffet
java -versionAffiche la version du JDK installé.
javac Fichier.javaCompile en bytecode (Fichier.class).
java FichierLance la classe compilée.
java Fichier.javaCompile en mémoire et lance un fichier unique.

Détails : La JVM et ton premier programme.

Types et variables

TypeExemple
intint minutes = 20;
longlong grand = 5_000_000_000L;
doubledouble prix = 3.5;
booleanboolean ok = true;
charchar lettre = 'A';
StringString nom = "Crêpes";
var portions = 4;               // type déduit
final double TVA = 0.055;       // constante
String s = "Plat %s".formatted(nom);
boolean egal = nom.equals("Crêpes"); // jamais == pour du texte

Détails : Variables, types et String.

Conditions et boucles

if (minutes <= 30) { /* ... */ } else { /* ... */ }

String menu = switch (jour) {
    case "samedi", "dimanche" -> "Brunch";
    default -> "Plat du jour";
};

for (int i = 0; i < 3; i++) { }
while (portions < 10) { portions *= 2; }

Détails : Conditions, boucles et méthodes.

Méthodes

static double prixParPortion(double total, int portions) {
    return total / portions;
}

Le type void indique qu'aucune valeur n'est renvoyée. Deux méthodes de même nom peuvent coexister si leurs paramètres diffèrent (surcharge). Détails : Conditions, boucles et méthodes.

Tableaux, classes et records

String[] ingredients = {"farine", "oeufs"};
int taille = ingredients.length;

public class Recette {
    private String nom;
    public Recette(String nom) { this.nom = nom; }
    public String getNom() { return nom; }
}

public record Ingredient(String nom, double quantite) { }

Un record génère le constructeur, les accesseurs nom(), equals et toString. Détails : Tableaux, classes et records.

Héritage et interfaces

Mot-cléRôle
extendsHérite d'une seule classe mère.
implementsRespecte une ou plusieurs interfaces.
super(...)Appelle le constructeur de la classe mère.
@OverrideMarque une méthode redéfinie.
abstractClasse non instanciable ou méthode sans corps.
finalInterdit l'héritage (classe) ou la réaffectation (variable).

Détails : Héritage, interfaces et polymorphisme.

Collections

List<String> courses = new ArrayList<>();
courses.add("farine");
List<String> fixe = List.of("sel", "poivre"); // non modifiable

Map<String, Integer> duree = new HashMap<>();
duree.put("Crêpes", 20);
duree.getOrDefault("Pizza", 0);

Détails : Collections, génériques et exceptions.

Exceptions

try {
    int n = Integer.parseInt(texte);
} catch (NumberFormatException e) {
    System.out.println("Invalide");
} finally {
    System.out.println("Toujours exécuté");
}

throw new IllegalArgumentException("message");

Détails : Collections, génériques et exceptions.

Sources officielles

Ensuite

Projet
Lignes de code
Niveau
Le quartier
Appartement
Java
Pièce
7/7
Plan n°
java/index
Lignes de code · fiches rédigées à partir des documentations officielles, sources citées en bas de chaque page.