Qu'est-ce que Java ?

Java est un langage compilé orienté objet : chaque programme vit dans des classes, point d'entrée main, typage statique.

À quoi ça sert ? Applications desktop, Android, serveurs (Spring), et en NSI pour comprendre classes, héritage, interfaces et collections typées.

Éditeur Java Exercices Quiz Kahoot Flashcards

Programme minimal

main

Fichier Main.java, compilation javac, exécution java Main.

public class Main { }
Nom de classe = nom du fichier
public static void main(String[] args)
Point d'entrée
System.out.println("NSI");
Affichage console
Main.java
public class Main {
    public static void main(String[] args) {
        System.out.println("Bonjour NSI !");
    }
}

Types & variables

int : String

Types primitifs (int, double, boolean) et objets (String).

int n = 42;
Entier
String s = "java";
Chaîne immuable
final double PI = 3.14;
Constante

Classes & objets

POO

new instancie ; constructeur ; this ; extends / implements.

class Eleve { }
Déclaration
Eleve e = new Eleve();
Instanciation
@Override
Redéfinition de méthode

Collections

ArrayList

java.util : listes, maps, boucles for-each.

ArrayList<String> lst = new ArrayList<>();
Liste typée
HashMap<String, Integer> m;
Dictionnaire
for (String x : lst) { }
Parcours

Boucles & conditions

if : for

Contrôle du flux : if, for, while, switch.

if (n > 0) { }
Condition
for (int i = 0; i < n; i++)
Boucle comptée
while (ok) { }
Tant que vrai

Entrées & chaînes

Scanner

Scanner, length(), parseInt.

Scanner sc = new Scanner(System.in);
Lecture clavier
int n = sc.nextInt();
Lire un entier
Integer.parseInt("42")
String vers int

Exceptions

try : catch

Gérer les erreurs sans planter le programme : try, catch, finally, throw.

try { lire(); } catch (IOException e) { }
Capturer une erreur I/O
throw new IllegalArgumentException("n");
Signaler un paramètre invalide
finally { sc.close(); }
Nettoyage garanti

Opérateurs & comparaisons

== : &&

Java compare les objets avec equals (pas == pour les chaînes).

s.equals("NSI")
Comparer deux String
n % 2 == 0
Pair / impair
a && b
ET logique
switch (jour) { case 1: }
Choix multiple

On révise quoi ?