Le langage Java
Java 8
Le langage Java
Introduction
L’environnement
Oracle JDK et Open JDK
Unbref historique des versions
Installation
Configuration d'Eclipse
Compilation & exécution
Unpremier programme
La compilation
L’exécution
Laliaison dynamique
Le classpath
Bibliothèques Java : les fichiers JAR
Création d’un projet dans Eclipse
Exercice
La structure fondamentale du langage
Les instructions
Les blocs de code
Les commentaires
Le formatage du code
Les conventions de nommage
Lesmots-clés
Une première classe
Déclarerune classe
Anatomied’une classe
Ajouterdes méthodes
Laméthode main
Exécuter le programme en ligne de commandes
Exécuter le programme depuis Eclipse
Les types primitifs
Letype booléen : boolean
Letype caractère : char
Les types entiers : byte, short, int, long
Les types à virgule flottante : float, double
Les classes enveloppes
L’autoboxing
Les opérateurs
L’opérateur d’affectation
Les opérateurs arithmétiques
Les opérateurs arithmétiques unaires
L’opérateur de concaténation de chaînes
Les opérateurs relationnels
Les opérateurs logiques
L’opérateur ternaire
Les opérateurs
bitwise
Les opérateurs de décalage
Letranstypage (cast)
Opérateuret assignation
L’opérateur .
L’opérateur ,
Les structures de contrôle
if-else
return
while
do-while
for
foramélioré
break-continue
libellé
switch
Exercice
Les tableaux
Initialisation
Création avecnew
Accèsaux éléments d’un tableau
Tableau multi-dimensionnel
Conversion en chaîne de caractères
Égalitéde deux tableaux
Tri & recherche
Copie d’untableau
Typage d’untableau
Conversiond’un tableau en liste
Attributs & méthodes
Lesattributs
Laportée
L’initialisation
attributsfinaux
Attributsde classe
Attributsde classe finaux
Lesméthodes
Laportée
Lavaleur de retour
Lesparamètres
Paramètrefinal
Lesvariables
Méthodesde classe
Surchargede méthode : overloading
Portéedes noms et this
Principed’encapsulation
Exercice
Cycle de vie d’un objet
Leconstructeur
Paramètresde constructeur
Valeurpar défaut des attributs
Constructeurpar défaut
Constructeurprivé
Appeld’un constructeur dans un constructeur
Appeld’une méthode dans un constructeur
Injectionde dépendances par le constructeur
Lebloc d’initialisation
Lebloc d’initialisation de classe
Exercice
Mémoireheap et stack
Leramasse-miettes
Laméthode finalize
Les packages
Déclarationd’un package
Sous package
Nom d’unpackage
Nomcomplet d’une classe
Import de noms
Laportée de niveau package
Lefichier package-info.java
Les relations entre objets
L’héritage(is-a)
Héritageet constructeur
Héritagesimple : Object
Héritageet affectation
Lemot-clé instanceof
Laportée protected
Héritagedes méthodes et attributs de classe
Héritageet final
Lacomposition (has-a)
Le polymorphisme
Principedu polymorphisme
Uneexception : les méthodes privées
Redéfinitionet signature de méthode
Le mot-clésuper
L’annotation@Override
Lesméthodes de classe
Méthodefinale
Constructeuret polymorphisme
Masquagedes attributs par héritage
Leprincipe du ouvert/fermé
La classe Object
Laméthode equals
Laméthode hashCode
Laméthode toString
Laméthode finalize
Laméthode clone
Laméthode getClass
Lesméthodes de concurrence
La classe String
Stringet tableau de caractères
Quelquesméthodes utilitaires
Constructiond’une instance de String
Immutabilitédes chaînes de caractères
La classe StringBuilder
Formatagede texte
Les expressions régulières
Les exceptions
Qu’est-cequ’une exception ?
Signalerune exception
Traiterune exception
Propagationd’une exception
Exceptionset polymorphisme
Le blocfinally
Letry-with-resources
Hiérarchieapplicative d’exception
Exceptioncause
Leserreurs et les exceptions runtime
Choixentre checked et unchecked
Les classes abstraites
Déclarerune classe abstraite
Déclarerune méthode abstraite
Les énumérations
Lesméthodes d’une énumération
Égalitéentre énumérations
Support deswitch
Générationd’une énumération
Ajoutde méthodes et d’attributs
Ajoutde constructeurs
Les dates
Date: la classe historique
Calendar
L’APIDate/Time
Les Dates
La classe Instant
Périodeet durée
Formatagedes dates
Lesinterfaces
Déclarationd’une interface
Implémentationd’une interface
Attributset méthodes statiques
Héritaged’interface
Lesinterfaces marqueurs
Implémentationpar défaut
Laségrégation d’interface
L’inversionde dépendance
Méthodes etclasses génériques
L’exemplede la classe ArrayList
Créationet assignation d’une classe générique
Notationen diamant
Substitutionet type générique
Écrireune méthode générique
Écrireune classe générique
Limitations
Lescollections
Les listes
La classe ArrayList
La classe LinkedList
La classe ArrayDeque
La classe PriorityQueue
Les classes Vector et Stack
Lesinterfaces pour les listes
Lesensembles (set)
La classe TreeSet
La classe HashSet
La classe LinkedHashSet
Lesinterfaces pour les ensembles
Copied’une collection dans un tableau
Les tableaux associatifs (maps)
La classe TreeMap
La classe HashMap
La classe LinkedHashMap
Les classes Dictionary et Hashtable
Lesinterfaces pour les tableaux associatifs
La classe outil Collections
Lesentrées/sorties
InputStreamet classes concrètes
OutputStreamet classes concrètes
Fluxorientés caractères
Readeret classes concrètes
Writeret classes concrètes
Lesdécorateurs de flux
La classe Scanner
Fichierset chemins
Accès auréseau
Lasérialisation d’objets
Donnéetransient
Identifiantde version de sérialisation
Leslambdas
Syntaxedes lambdas
Lambda etclosure
Lesinterfaces fonctionnelles
L’opérateur:: de référence de méthode
Streams
Créationd’un stream
La réduction
La collecte
Le filtrage
Le mapping
Leparallélisme
Exercice
Les classes internes
Les classes internes static
Les classesinternes
Les classes anonymes
Accèsaux éléments de l’objet englobant
Classeinterne à une méthode
Interfaceet énumération
Plusieursclasses dans un même fichier
Lesannotations
Utilisationdes annotations
Déclarationd’une annotation
Rétentiond’une annotation
Utilisationdes annotations par introspection
Exercice
Accès aux basesde données : JDBC
Préambule: try-with-resources
Lepilote de base de données
Créationd’une connexion
L’URLde connexion et la classe des pilotes
Lesrequêtes SQL (Statement)
Le Statement
Le ResultSet
LePreparedStatement
L’injectionSQL
LeCallableStatement
La transaction
Java Swing
Swing : les interfacesgraphiques
Une première application
Lesprincipaux composants
Leslayouts
LeBoxLayout
LeGridBagLayout
LeSpringLayout
Lelook & feel
Exercice
Swing: les interactions
Leslisteners
Les menus
L’interfaceAction
Lesboites de dialogue
Lesboites de dialogues avancées
Boitede dialogue des fichiers
Boitede sélection de couleur
Exercice
Swing: notions avancées
Créationde composant
Exercice
Principedu MVC
La classe JTable
Le langage Java
Accueil
»
Index
Index