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
| Commande | Effet |
|---|---|
java -version | Affiche la version du JDK installé. |
javac Fichier.java | Compile en bytecode (Fichier.class). |
java Fichier | Lance la classe compilée. |
java Fichier.java | Compile en mémoire et lance un fichier unique. |
Détails : La JVM et ton premier programme.
Types et variables
| Type | Exemple |
|---|---|
int | int minutes = 20; |
long | long grand = 5_000_000_000L; |
double | double prix = 3.5; |
boolean | boolean ok = true; |
char | char lettre = 'A'; |
String | String 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 |
|---|---|
extends | Hérite d'une seule classe mère. |
implements | Respecte une ou plusieurs interfaces. |
super(...) | Appelle le constructeur de la classe mère. |
@Override | Marque une méthode redéfinie. |
abstract | Classe non instanciable ou méthode sans corps. |
final | Interdit 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