0% ont trouvé ce document utile (0 vote)
0 vues3 pages

Cours_Java

Java est un langage de programmation orienté objet, sécurisé et portable, permettant d'écrire du code une fois et de l'exécuter sur n'importe quel système grâce à la Machine Virtuelle Java. Il utilise des concepts de programmation orientée objet tels que l'encapsulation, l'héritage et le polymorphisme, ainsi que des interfaces pour contourner l'héritage multiple. Le langage inclut également des fonctionnalités modernes comme les expressions lambda et le Garbage Collector pour la gestion automatique de la mémoire.

Transféré par

girel.dev
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
0 vues3 pages

Cours_Java

Java est un langage de programmation orienté objet, sécurisé et portable, permettant d'écrire du code une fois et de l'exécuter sur n'importe quel système grâce à la Machine Virtuelle Java. Il utilise des concepts de programmation orientée objet tels que l'encapsulation, l'héritage et le polymorphisme, ainsi que des interfaces pour contourner l'héritage multiple. Le langage inclut également des fonctionnalités modernes comme les expressions lambda et le Garbage Collector pour la gestion automatique de la mémoire.

Transféré par

girel.dev
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Cours Complet : Programmation en Java

1. Introduction et Philosophie
Créé par Sun Microsystems en 1995, Java est un langage de programmation
strictement orienté objet, sécurisé et portable. Sa devise "Write Once, Run Anywhere"
(Écrire une fois, exécuter partout) illustre son indépendance vis-à-vis des systèmes
d'exploitation.
Cette portabilité est rendue possible grâce à la Machine Virtuelle Java (JVM). Le
compilateur Java transforme le code source en bytecode, et la JVM interprète ce
bytecode sur la machine de destination.

2. Structure de Base
En Java, tout le code doit résider dans une classe. Le nom du fichier source doit
correspondre exactement au nom de la classe publique. Le point d'entrée d'un
programme Java est la méthode 'main'.
public class HelloWorld {
public static void main(String[] args) {
[Link]("Bonjour le monde !");
}
}

3. Variables et Types de Données


Java est un langage à typage fort. Les types primitifs (int, double, boolean, char) gèrent
les données simples en optimisant la mémoire, tandis que les types objets (comme
String ou vos propres classes) offrent des méthodes supplémentaires.
int age = 30;
double salaire = 4500.50;
boolean estActif = true;
String nom = "Bob";

4. Programmation Orientée Objet (POO)


Les concepts fondamentaux de la POO en Java sont l'encapsulation (via les
modificateurs private/public et les getters/setters), l'héritage (via le mot-clé extends) et
le polymorphisme.
public class Vehicule {
public void demarrer()
{ [Link]("Démarrage"); }
}

public class Voiture extends Vehicule {


@Override
public void demarrer() { [Link]("Vroum !"); }
}
5. Interfaces et Classes Abstraites
Contrairement au C++, Java n'autorise pas l'héritage multiple de classes. Pour
contourner cette limite, il utilise les interfaces (implements). Une interface définit un
contrat : toutes les méthodes déclarées doivent être implémentées par la classe.
public interface Volant {
void voler();
}

public class Oiseau implements Volant {


public void voler() { [Link]("L'oiseau vole");
}
}

6. Collections (Java Collections Framework)


Le framework Collections remplace les tableaux classiques lorsqu'on a besoin de tailles
dynamiques. Il inclut les interfaces List (ArrayList), Set (HashSet) et Map (HashMap).
import [Link];
import [Link];

List<String> liste = new ArrayList<>();


[Link]("Java");
[Link]("Python");

7. Gestion des Exceptions


Java distingue deux types d'exceptions : les checked exceptions (vérifiées à la
compilation, comme IOException) et les unchecked exceptions (erreurs d'exécution
comme NullPointerException). Les exceptions se gèrent avec try-catch-finally.
try {
int resultat = 10 / 0;
} catch (ArithmeticException e) {
[Link]("Erreur : Division par zéro");
} finally {
[Link]("Fin du traitement");
}

8. Programmation Multithread
Java intègre nativement la gestion de tâches concurrentes (multithreading). Vous
pouvez exécuter du code en parallèle en implémentant l'interface Runnable ou en
héritant de la classe Thread. Le mot-clé synchronized protège les données partagées.
Thread t1 = new Thread(() -> {
[Link]("Thread en cours");
});
[Link]();
9. Fonctionnalités Modernes (Lambdas et Streams)
Depuis Java 8, le langage prend en charge un style fonctionnel grâce aux expressions
lambda et à l'API Stream. Ces ajouts simplifient considérablement le traitement et le
filtrage des collections.
List<Integer> nombres = [Link](1, 2, 3, 4, 5);
[Link]()
.filter(n -> n % 2 == 0)
.forEach([Link]::println);

10. Gestion de la Mémoire (Garbage Collector)


Vous ne libérez jamais la mémoire explicitement en Java. Le Garbage Collector
(ramasse-miettes) s'exécute en arrière-plan pour détecter et supprimer les objets qui ne
sont plus référencés, libérant le développeur de la gestion de mémoire manuelle.

Vous aimerez peut-être aussi