Programmation en Java
Alexandre Meslé
3 janvier 2017
Table des matières
1 Notes de cours 2
1.1 Introduction................................................... 2
1.1.1 HelloWorld! .............................................. 2
1.1.2 Formatsdechiers........................................... 2
1.1.3 Machinevirtuelle............................................ 2
1.1.4 Linkage ................................................. 3
1.2 Survoldulangage................................................ 4
1.2.1 Structureduneclasse ......................................... 4
1.2.2 Variables ................................................ 4
1.2.3 Entrées-sorties ............................................. 4
1.2.4 Sous-programmes............................................ 5
1.2.5 Main................................................... 5
1.2.6 Instructionsdecontrôledeux.................................... 5
1.2.7 Exemplerécapitulatif ......................................... 5
1.2.8 Packages................................................. 6
1.3 Variables .................................................... 7
1.3.1 Dénition................................................ 7
1.3.2 Déclaration ............................................... 7
1.3.3 Aectation ............................................... 7
1.3.4 Saisie .................................................. 8
1.3.5 Achage ................................................ 8
1.3.6 Entiers.................................................. 8
1.3.7 Flottants ................................................ 9
1.3.8 Caractères................................................ 10
1.3.9 Chaînesdecaractères ......................................... 10
1.4 Opérateurs ................................................... 11
1.4.1 Généralités ............................................... 11
1.4.2 Lesopérateursunaires......................................... 11
1.4.3 Lesopérateursbinaires ........................................ 12
1.4.4 Formescontractées........................................... 13
1.4.5 Opérationshétérogènes ........................................ 14
1.4.6 Lespriorités............................................... 15
1.5 Conditions.................................................... 16
1.5.1 Le bloc if ................................................ 16
1.5.2 Si...Alors...Sinon .......................................... 16
1.5.3 Switch.................................................. 18
1.5.4 Booléens................................................. 19
1.5.5 Lespriorités............................................... 20
1.6 Boucles ..................................................... 21
1.6.1 Dénitionsetterminologie....................................... 21
1.6.2 while................................................... 21
1.6.3 do...while ............................................... 22
1.6.4 for.................................................... 22
1
1.6.5 Accoladessuperues .......................................... 23
1.7 Tableaux .................................................... 24
1.7.1 Déclaration ............................................... 24
1.7.2 Instanciation .............................................. 24
1.7.3 Accèsauxéléments........................................... 24
1.7.4 Longueurduntableau......................................... 25
1.7.5 Tableaux à plusieurs dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.8 Objets...................................................... 26
1.8.1 Créationduntype........................................... 26
1.8.2 Lesméthodes.............................................. 26
1.8.3 Linstanciation ............................................. 26
1.8.4 Lespackages .............................................. 28
1.8.5 Le mot-clé this ............................................. 28
1.9 Encapsulation.................................................. 29
1.9.1 Exemple................................................. 29
1.9.2 Visibilité ................................................ 31
1.9.3 Constructeur .............................................. 33
1.9.4 Accesseurs................................................ 34
1.9.5 Surcharge................................................ 35
1.9.6 Collections ............................................... 36
1.10Héritage..................................................... 39
1.10.1 Héritage................................................. 39
1.10.2 Polymorphisme............................................. 40
1.10.3 Redénitiondeméthodes ....................................... 40
1.10.4 Interfaces ................................................ 40
1.10.5 ClassesAbstraites ........................................... 41
1.11Exceptions ................................................... 45
1.11.1 Rattraperuneexception........................................ 45
1.11.2 Méthodes levant des exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
1.11.3 Propagationduneexception ..................................... 46
1.11.4 Déniruneexception ......................................... 46
1.11.5 Leveruneexception .......................................... 47
1.11.6 Rattraper plusieurs exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
1.11.7 Finally.................................................. 47
1.11.8 RuntimeException ........................................... 48
1.12Interfacesgraphiques.............................................. 49
1.12.1 Fenêtres................................................. 49
1.12.2 Unpremierobjetgraphique...................................... 49
1.12.3 Ecouteursdévénements ........................................ 50
1.12.4 Premierexemple ............................................ 50
1.12.5 Classesanonymes............................................ 51
1.12.6 Gestionnaires de mise en forme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
1.12.7 Un exemple complet : Calcul d’un carré . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
1.13Testsunitaires ................................................. 55
1.13.1 Exemple................................................. 55
1.13.2 Testàlabourrin ............................................ 56
1.13.3 Testdesfonctions ........................................... 56
1.13.4 Testdesfonctionsautomatisé..................................... 57
1.13.5 Testsunitaires ............................................. 58
1.13.6 Logs................................................... 59
1.14Collections ................................................... 60
1.14.1 Typesparamétrés ........................................... 60
1.14.2 Paramètresethéritage......................................... 61
1.14.3 Collectionsstandard .......................................... 62
2
1.15Threads ..................................................... 70
1.15.1 Ledînerdesphilosophes........................................ 70
1.15.2 Lancement ............................................... 71
1.15.3 Synchronisation............................................. 71
1.15.4 MiseenAttente ............................................ 73
1.16Persistance ................................................... 75
1.16.1 Fichiers ................................................. 75
1.16.2 Serialization............................................... 76
1.16.3 JDBC .................................................. 77
1.16.4 Lattaqueparinjection......................................... 78
1.17Hibernate .................................................... 81
1.17.1 Introduction .............................................. 81
1.17.2 Unpremierexemple .......................................... 81
1.17.3 Lesprincipesdebase.......................................... 84
1.17.4 Un gestionnaire de table en quelques lignes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
1.17.5 Operations sur la base de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
1.17.6 Un exemple de relations entre les classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
2 Exercices 100
2.1 Variables .................................................... 100
2.1.1 Saisieetachage............................................ 100
2.1.2 Entiers.................................................. 101
2.1.3 Flottants ................................................ 101
2.1.4 Caractères................................................ 101
2.2 Opérateurs ................................................... 102
2.2.1 Conversions............................................... 102
2.2.2 Opérations sur les bits (difficiles) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
2.2.3 Morceauxchoisis(diciles) ...................................... 102
2.3 Conditions.................................................... 104
2.3.1 Priseenmain.............................................. 104
2.3.2 Switch.................................................. 104
2.4 Boucles ..................................................... 105
2.4.1 Compréhension............................................. 105
2.4.2 Utilisation de toutes les boucles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
2.4.3 Choix de la boucle la plus appropriée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
2.4.4 Morceauxchoisis............................................ 106
2.4.5 Extensiondelacalculatrice ...................................... 107
2.5 Tableaux .................................................... 108
2.5.1 Exercicesdecompréhension...................................... 108
2.5.2 Priseenmain.............................................. 109
2.5.3 Indices.................................................. 109
2.5.4 Matrices................................................. 109
2.6 Lessous-programmes.............................................. 111
2.6.1 Initiation ................................................ 111
2.6.2 Géométrie................................................ 111
2.6.3 Arithmétique.............................................. 114
2.6.4 Tableaux ................................................ 115
2.6.5 Pourlesport .............................................. 115
2.7 Objets...................................................... 116
2.7.1 Créationduneclasse.......................................... 116
2.7.2 Méthodes ................................................ 116
2.8 Encapsulation.................................................. 117
2.8.1 ImplémentationdunePile....................................... 117
2.8.2 Collections ............................................... 121
2.9 Héritage..................................................... 122
3
2.9.1 Héritage................................................. 122
2.9.2 Polymorphisme............................................. 122
2.9.3 Interfaces ................................................ 125
2.9.4 Classesabstraites............................................ 128
2.9.5 Underniercasse-tête.......................................... 128
2.10Exceptions ................................................... 136
2.11Interfacesgraphiques.............................................. 137
2.11.1 Priseenmain.............................................. 137
2.11.2 Maintenantdébrouillez-vous...................................... 137
2.12Testsunitaires ................................................. 138
2.12.1 Priseenmain.............................................. 138
2.12.2 Pourallerplusloin........................................... 139
2.13Collections ................................................... 140
2.13.1 Typesparamétrés ........................................... 140
2.13.2 Collections ............................................... 140
2.13.3 Morceauxchoisis ............................................ 140
2.14Threads ..................................................... 143
2.14.1 Priseenmain.............................................. 143
2.14.2 Synchronisation............................................. 143
2.14.3 Débrouillez-vous ............................................ 143
2.15Persistance ................................................... 144
2.15.1 Remembermyname.......................................... 144
2.15.2 Hachage................................................. 144
2.15.3 Morceauxchoisis ............................................ 144
2.16Hibernate .................................................... 145
2.16.1 Priseenmain.............................................. 145
2.16.2 Contacts................................................. 145
4
1 / 149 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !