APPRENTISSAGE DU LANGAGE JAVA Serge Tahé - ISTIA - Université d'Angers

APPRENTISSAGE DU LANGAGE JAVA
Serge Tahé - ISTIA - Université d'Angers
Septembre 98 - Révision juin 2002
Introduction
Ce document est un support de cours : ce n'est pas un cours complet. Des approfondissements nécessitent l'aide d'un enseignant.
L'étudiant y trouvera cependant une grande quantité d'informations lui permettant la plupart du temps de travailler seul. Ce
document comporte probablement des erreurs : toute suggestion constructive est la bienvenue à l'adresse serge.ta[email protected]
angers.fr.
Il existe d'excellents livres sur Java. Parmi ceux-ci :
1. Programmer en Java de Claude Delannoy aux éditions Eyrolles
2. Java client-serveur de Cédric Nicolas, Christophe Avare, Frédéric Najman chez Eyrolles.
Le premier livre est un excellent ouvrage d'introduction pédagogique au langage Java. Une fois acquis son contenu, on pourra
passer au second ouvrage qui présente des aspects plus avancés de Java (Java Beans, JDBC, Corba/Rmi). Il présente une vue
industrielle de Java intéressante. Pour approfondir Java dans différents domaines, on pourra se référer à la collection "Java series"
chez O'Reilly. Pour une utilisation professionnelle de Java au sein d'une plate-forme J2EE on pourra lire :
3. Programmation j2EE aux éditions Wrox et distribué par Eyrolles.
Septembre 98, juin 2002
Serge Tahé
Les bases 3
1. LES BASES DU LANGAGE JAVA 7
1.1 INTRODUCTION 7
1.2 LES DONNEES DE JAVA 7
1.2.1 LES TYPES DE DONNEES PREDEFINIS 7
1.2.2 NOTATION DES DONNEES LITTERALES 7
1.2.3 DECLARATION DES DONNEES 8
1.2.4 LES CONVERSIONS ENTRE NOMBRES ET CHAINES DE CARACTERES 8
1.2.5 LES TABLEAUX DE DONNEES 10
1.3 LES INSTRUCTIONS ELEMENTAIRES DE JAVA 10
1.3.1 ECRITURE SUR ECRAN 11
1.3.2 LECTURE DE DONNEES TAPEES AU CLAVIER 11
1.3.3 EXEMPLE D'ENTREES-SORTIES 12
1.3.4 AFFECTATION DE LA VALEUR D'UNE EXPRESSION A UNE VARIABLE 13
1.4 LES INSTRUCTIONS DE CONTROLE DU DEROULEMENT DU PROGRAMME 17
1.4.1 ARRET 17
1.4.2 STRUCTURE DE CHOIX SIMPLE 18
1.4.3 STRUCTURE DE CAS 18
1.4.4 STRUCTURE DE REPETITION 19
1.5 LA STRUCTURE D'UN PROGRAMME JAVA 21
1.6 LA GESTION DES EXCEPTIONS 22
1.7 COMPILATION ET EXECUTION D'UN PROGRAMME JAVA 25
1.8 ARGUMENTS DU PROGRAMME PRINCIPAL 25
1.9 PASSAGE DE PARAMETRES A UNE FONCTION 26
1.10 L'EXEMPLE IMPOTS 26
2. CLASSES ET INTERFACES 30
2.1 L' OBJET PAR L'EXEMPLE 30
2.1.1 GENERALITES 30
2.1.2 DEFINITION DE LA CLASSE PERSONNE 30
2.1.3 LA METHODE INITIALISE 31
2.1.4 L'OPERATEUR NEW 31
2.1.5 LE MOT CLE THIS 32
2.1.6 UN PROGRAMME DE TEST 32
2.1.7 UNE AUTRE METHODE INITIALISE 34
2.1.8 CONSTRUCTEURS DE LA CLASSE PERSONNE 35
2.1.9 LES REFERENCES D'OBJETS 36
2.1.10 LES OBJETS TEMPORAIRES 37
2.1.11 METHODES DE LECTURE ET D'ECRITURE DES ATTRIBUTS PRIVES 37
2.1.12 LES METHODES ET ATTRIBUTS DE CLASSE 38
2.1.13 PASSAGE D'UN OBJET A UNE FONCTION 39
2.1.14 ENCAPSULER LES PARAMETRES DE SORTIE D'UNE FONCTION DANS UN OBJET 40
2.1.15 UN TABLEAU DE PERSONNES 40
2.2 L'HERITAGE PAR L'EXEMPLE 41
2.2.1 GENERALITES 41
2.2.2 CONSTRUCTION D'UN OBJET ENSEIGNANT 42
2.2.3 SURCHARGE D'UNE METHODE 43
2.2.4 LE POLYMORPHISME 43
2.2.5 SURCHARGE ET POLYMORPHISME 44
2.3 CLASSES INTERNES 45
2.4 LES INTERFACES 46
2.5 CLASSES ANONYMES 49
2.6 LES PAQUETAGES 52
2.6.1 CREER DES CLASSES DANS UN PAQUETAGE 52
2.6.2 RECHERCHE DES PAQUETAGES 56
2.7 L'EXEMPLE IMPOTS 58
Les bases 4
3. CLASSES D'USAGE COURANT 62
3.1 LA DOCUMENTATION 62
3.2 LES CLASSES DE TEST 64
3.3 LA CLASSE STRING 65
3.4 LA CLASSE VECTOR 66
3.5 LA CLASSE ARRAYLIST 67
3.6 LA CLASSE ARRAYS 68
3.7 LA CLASSE ENUMERATION 72
3.8 LA CLASSE HASHTABLE 73
3.9 LES FICHIERS TEXTE 74
3.9.1 ECRIRE 74
3.9.2 LIRE 75
3.9.3 SAUVEGARDE D'UN OBJET PERSONNE 76
3.10 LES FICHIERS BINAIRES 77
3.10.1 LA CLASSE RANDOMACCESSFILE 77
3.10.2 LA CLASSE ARTICLE 77
3.10.3 ECRIRE UN ENREGISTREMENT 78
3.10.4 LIRE UN ENREGISTREMENT 79
3.10.5 CONVERSION TEXTE --> BINAIRE 80
3.10.6 CONVERSION BINAIRE --> TEXTE 81
3.10.7 ACCES DIRECT AUX ENREGISTREMENTS 83
3.11 UTILISER LES EXPRESSION REGULIERES 85
3.11.1 LE PAQUETAGE JAVA.UTIL.REGEX 85
3.11.2 VERIFIER QU'UNE CHAINE CORRESPOND A UN MODELE DONNE 87
3.11.3 TROUVER TOUS LES ELEMENTS D'UNE CHAINE CORRESPONDANT A UN MODELE 87
3.11.4 RECUPERER DES PARTIES D'UN MODELE 88
3.11.5 UN PROGRAMME D'APPRENTISSAGE 89
3.11.6 LA METHODE SPLIT DE LA CLASSE PATTERN 91
3.12 EXERCICES 92
3.12.1 EXERCICE 1 92
3.12.2 EXERCICE 2 93
3.12.3 EXERCICE 3 94
3.12.4 EXERCICE 4 95
3.12.5 EXERCICE 5 96
4. INTERFACES GRAPHIQUES 98
4.1 LES BASES DES INTERFACES GRAPHIQUES 98
4.1.1 UNE FENETRE SIMPLE 98
4.1.2 GERER UN EVENEMENT 100
4.1.3 UN FORMULAIRE AVEC BOUTON 102
4.1.4 LES GESTIONNAIRES D'EVENEMENTS 105
4.1.5 LES METHODES DES GESTIONNAIRES D'EVENEMENTS 106
4.1.6 LES CLASSES ADAPTATEURS 107
4.1.7 CONCLUSION 107
4.2 CONSTRUIRE UNE INTERFACE GRAPHIQUE AVEC JBUILDER 108
4.2.1 NOTRE PREMIER PROJET JBUILDER 108
4.2.2 LES FICHIERS GENERES PAR JBUILDER POUR UNE INTERFACE GRAPHIQUE 112
4.2.3 DESSINER UNE INTERFACE GRAPHIQUE 116
4.2.4 CHERCHER DE L'AIDE 123
4.2.5 QUELQUES COMPOSANTS SWING 126
4.2.6 ÉVENEMENTS SOURIS 143
4.2.7 CREER UNE FENETRE AVEC MENU 146
4.3 BOITES DE DIALOGUE 151
4.3.1 BOITES DE MESSAGE 151
4.3.2 LOOKS AND FEELS 151
4.3.3 BOITES DE CONFIRMATION 152
4.3.4 BOITE DE SAISIE 153
4.4 BOITES DE SELECTION 154
4.4.1 BOITE DE SELECTION JFILECHOOSER 154
4.4.2 BOITES DE SELECTION JCOLORCHOOSER ET JFONTCHOOSER 159
Les bases 5
4.5 L'APPLICATION GRAPHIQUE IMPOTS 164
4.6 ECRITURE D'APPLETS 169
4.6.1 INTRODUCTION 169
4.6.2 LA CLASSE JAPPLET 169
4.6.3 TRANSFORMATION D'UNE APPLICATION GRAPHIQUE EN APPLET 170
4.6.4 L'OPTION DE MISE EN FORME <APPLET> DANS UN DOCUMENT HTML 176
4.6.5 ACCEDER A DES RESSOURCES DISTANTES DEPUIS UNE APPLET 178
4.7 L'APPLET IMPOTS 183
4.8 CONCLUSION 187
4.9 JBUILDER SOUS LINUX 187
5. GESTION DES BASES DE DONNEES AVEC L’API JDBC 200
5.1 GENERALITES 200
5.2 LES ETAPES IMPORTANTES DANS LEXPLOITATION DES BASES DE DONNEES 201
5.2.1 INTRODUCTION 201
5.2.2 L’ETAPE DE CONNEXION 203
5.2.3 ÉMISSION DE REQUETES VERS LA BASE DE DONNEES 205
5.3 IMPOTS AVEC UNE BASE DE DONNEES 214
5.4 EXERCICES 220
5.4.1 EXERCICE 1 220
5.4.2 EXERCICE 2 220
5.4.3 EXERCICE 3 220
5.4.4 EXERCICE 4 225
6. LES THREADS D'EXECUTION 229
6.1 INTRODUCTION 229
6.2 CREATION DE THREADS D'EXECUTION 230
6.3 INTERET DES THREADS 232
6.4 UNE HORLOGE GRAPHIQUE 233
6.5 APPLET HORLOGE 235
6.6 SYNCHRONISATION DE TACHES 237
6.6.1 UN COMPTAGE NON SYNCHRONISE 237
6.6.2 UN COMPTAGE SYNCHRONISE PAR METHODE 240
6.6.3 COMPTAGE SYNCHRONISE PAR UN OBJET 241
6.6.4 SYNCHRONISATION PAR EVENEMENTS 242
7. PROGRAMMATION TCP-IP 246
7.1 GENERALITES 246
7.1.1 LES PROTOCOLES DE L'INTERNET 246
7.1.2 LE MODELE OSI 246
7.1.3 LE MODELE TCP/IP 247
7.1.4 FONCTIONNEMENT DES PROTOCOLES DE L'INTERNET 249
7.1.5 LES PROBLEMES D'ADRESSAGE DANS L'INTERNET 250
7.1.6 LA COUCHE RESEAU DITE COUCHE IP DE L'INTERNET 253
7.1.7 LA COUCHE TRANSPORT : LES PROTOCOLES UDP ET TCP 254
7.1.8 LA COUCHE APPLICATIONS 255
7.1.9 CONCLUSION 256
7.2 GESTION DES ADRESSES RESEAU EN JAVA 256
7.2.1 DEFINITION 256
7.2.2 QUELQUES EXEMPLES 257
7.3 COMMUNICATIONS TCP-IP 258
7.3.1 GENERALITES 258
7.3.2 LES CARACTERISTIQUES DU PROTOCOLE TCP 258
7.3.3 LA RELATION CLIENT-SERVEUR 259
7.3.4 ARCHITECTURE D'UN CLIENT 259
7.3.5 ARCHITECTURE D'UN SERVEUR 259
7.3.6 LA CLASSE SOCKET 260
1 / 343 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 !