Documentation Java
Référence Java concise et illustrée par des exemples. Lisez le concept, voyez le code, puis pratiquez-le dans un parcours Coddy.
Commencer un parcours guidé en JavaPour commencer
- Qu'est-ce que JavaCe qu'est réellement Java, comment la JVM permet à un même programme compilé de s'exécuter partout, et les types de logiciels que l'on construit avec Java.
- Installer JavaComment installer le Kit de développement Java (JDK), choisir une version et un fournisseur, et confirmer que java et javac fonctionnent en ligne de commande.
- Exécuter JavaLe cycle en deux étapes compiler-puis-exécuter derrière chaque programme Java : transformez le source .java en bytecode avec javac, puis exécutez le fichier .class avec java.
- Syntaxe JavaLa forme d'un programme Java : la méthode `main`, les instructions et les points-virgules, les blocs et les accolades, et les règles que le compilateur impose avant même que votre code ne s'exécute.
- CommentairesComment écrire des commentaires en Java : commentaires sur une ligne //, blocs sur plusieurs lignes /* */ et commentaires de documentation Javadoc /** */, ainsi que quand utiliser chacun et ce qu'il faut éviter.
Variables et types
- VariablesComment fonctionnent les variables en Java : les déclarer avec un type, leur affecter des valeurs, les règles de nommage, le mot-clé var, les constantes avec final, et les règles de portée qui déterminent où vit une variable.
- Types de donnéesLes types de données de Java expliqués : les huit types primitifs, les types référence, les valeurs par défaut, les littéraux et suffixes, le dépassement (overflow) et quand utiliser quel type numérique.
- ChaînesComment fonctionnent les chaînes en Java : les créer, les assembler avec +, pourquoi elles sont immuables, les comparer avec equals et les méthodes de String du quotidien comme length, substring et replace.
- Formatage de chaînesComment formater des chaînes en Java avec String.format et printf - les spécificateurs de format pour les nombres, le remplissage, les décimales, ainsi que les text blocks et la méthode formatted.
- OpérateursComment fonctionnent les opérateurs Java - arithmétiques, de comparaison, logiques, d'affectation, d'incrémentation et l'opérateur ternaire - ainsi que la division entière, la priorité et les pièges qui surprennent les débutants.
- Conversion de typesComment Java convertit entre les types : élargissement automatique, conversions de rétrécissement explicites, quelles données vous perdez en rétrécissant, et conversion entre nombres et chaînes.
Flux de contrôle
- if-elseComment prendre des décisions en Java avec if, else if et else : conditions booléennes, enchaînement de branches, imbrication, l'opérateur ternaire et les erreurs courantes qui piègent tout le monde.
- switchL'instruction switch de Java expliquée : étiquettes case, break et fall-through, la branche default, le regroupement des cas, la forme fléchée moderne et les expressions switch.
- Boucle forLa boucle for de Java expliquée : la classique boucle en trois parties, parcourir des tableaux et des listes, les boucles imbriquées, break et continue, et le for-each amélioré.
- Boucles whileLa boucle while de Java expliquée : le while qui teste la condition d'abord, le do-while qui s'exécute au moins une fois, la lecture d'entrée jusqu'à une valeur sentinelle, break et continue, et comment éviter les boucles infinies.
- Boucle for-eachLa boucle for-each de Java (for amélioré) expliquée : itération propre sur les tableaux et collections, quand l'utiliser, et le piège de la modification qui surprend tout le monde.
Tableaux et collections
- TableauxComment fonctionnent les tableaux en Java - longueur fixe, déclaration et initialisation, indexation, length, parcours, tableaux multidimensionnels et la classe utilitaire Arrays.
- ArrayListComment utiliser l'ArrayList de Java - la liste redimensionnable que l'on choisit à la place d'un simple tableau - en couvrant l'ajout, la lecture, la suppression, la taille, le parcours et le tri.
- HashMapComment utiliser la HashMap de Java pour les recherches clé-valeur : put, get, getOrDefault, containsKey, parcourir les entrées et les patterns que vous utiliserez le plus.
- HashSetComment utiliser le HashSet de Java pour des collections de valeurs uniques : add, contains, remove, dédupliquer une liste et combiner des ensembles avec l'union, l'intersection et la différence.
- Parcourir les collectionsLes façons de parcourir les collections Java - la boucle for-each, l'Iterator, les boucles indexées et la méthode forEach - et comment supprimer des éléments en toute sécurité pendant l'itération.
Méthodes
- MéthodesCe qu'est une méthode Java, comment la déclarer et l'appeler, valeurs de retour versus void, la méthode statique main et comment les méthodes gardent le code organisé et réutilisable.
- Paramètres de méthodeComment fonctionnent les paramètres de méthode en Java - passer des arguments, la différence entre paramètres et arguments, la règle du passage par valeur de Java et le retour de valeurs.
- Surcharge de méthodesComment la surcharge de méthodes en Java permet à plusieurs méthodes de partager un nom tout en prenant des paramètres différents, comment le compilateur choisit une surcharge et quels pièges d'ambiguïté éviter.
- VarargsComment les varargs (...) de Java permettent à une méthode d'accepter un nombre quelconque d'arguments, comment ils deviennent un tableau, la règle du vararg unique en dernier, et les pièges de l'appel vide et de l'ambiguïté.
Classes et objets
- ClassesCe qu'est une classe Java, comment définir des champs et des méthodes, créer des objets avec new, le rôle de this et pourquoi l'état d'instance vit sur l'objet.
- ConstructeursComment fonctionnent les constructeurs en Java : le constructeur par défaut, les constructeurs paramétrés, this, la surcharge de constructeurs et le chaînage avec this() et super().
- HéritageComment une sous-classe Java hérite des champs et méthodes avec extends, appelle la classe parente via super et redéfinit le comportement - ainsi que les pièges courants.
- InterfacesCe qu'est une interface en Java, comment la définir et l'implémenter, les méthodes default et static, et en quoi les interfaces diffèrent des classes abstraites.
- Classes abstraitesCe qu'est une classe abstraite en Java, comment déclarer des méthodes abstraites, pourquoi vous ne pouvez pas l'instancier et quand choisir une classe abstraite plutôt qu'une interface.
- PolymorphismeComment le polymorphisme en Java permet à une variable de référencer plusieurs types, pourquoi les méthodes redéfinies sont résolues à l'exécution, et comment utiliser l'upcasting, le downcasting et instanceof en toute sécurité.
- Modificateurs d'accèsComment les quatre niveaux d'accès de Java - public, private, protected et package-private - contrôlent ce que le reste du code peut voir et manipuler.
- Membres statiquesCe que fait le mot-clé static en Java, comment les champs et méthodes static appartiennent à la classe plutôt qu'aux objets, et quand recourir aux blocs static et aux constantes.
- ÉnumérationsCe qu'est une énumération Java, comment la déclarer, lui ajouter des champs et des méthodes, l'utiliser dans un switch, et pourquoi une enum vaut mieux qu'un tas de constantes int ou String.
Génériques et fonctionnel
- GénériquesCe que sont les génériques de Java, comment écrire des classes et des méthodes génériques, les paramètres de type bornés, les jokers et pourquoi l'effacement de type compte.
- Expressions lambdaCe qu'est une expression lambda en Java, la syntaxe de la flèche, comment elle implémente une interface fonctionnelle, les références de méthode et la capture de variables.
- StreamsComment traiter des collections avec la Stream API de Java - filter, map, sorted, collect, count et reduce - en construisant des pipelines lisibles plutôt que des boucles manuelles.
- OptionalCe qu'est java.util.Optional, comment en créer un et comment lire sa valeur en toute sécurité avec map, filter, orElse et ifPresent plutôt qu'avec des vérifications de null.
Erreurs et débogage
- ExceptionsCe qu'est une exception en Java, comment lire une trace de pile, la distinction entre exceptions contrôlées et non contrôlées, la hiérarchie des exceptions et comment lancer les vôtres.
- try-catchComment utiliser try-catch en Java pour gérer les exceptions : capturer des types précis, le bloc finally, try-with-resources et les erreurs qui cachent des bugs.
- NullPointerExceptionCe que signifie vraiment une NullPointerException en Java, les façons courantes de la déclencher, comment lire le message et les modèles qui la préviennent.