Académique Documents
Professionnel Documents
Culture Documents
Programmation Java
2-1
Travailler avec Pre-Code écrit
Aperçu
• Cette leçon couvre les sujets suivants :
−Lire et comprendre un-préprogramme Java écrit composé
de classes et d'objets en interaction
−Appliquer le concept d'héritage dans les solutions de problèmes
−Tester les classes de
−manière
Décrivez isolée
quand il est plus approprié d'utiliser
Liste des
un
que
un tableaux
tableau
JP 2-1
Travailler avec Pre
-Code écrit Copyright ©
2020, Oracle et/ou ses filiales. Tous droits réservés. 3
3
Modification de programmes existants
•Lorsque vous programmez dans des scénarios réels,
par exemple pour une entreprise, vous maintenez
et modifiez souvent des programmes existants.
•Dans de nombreux cas, les problèmes commerciaux que
vous résolvez seront liés à des programmes existants
créés par d'autres programmeurs.
• Être capable de modifier un programme existant est une
compétence précieuse que vous devrez appliquer dans la
plupart des rôles de programmation
Si vous lisez le code d'une autre personne qui n'est pas commenté,
il peut être plus difficile de comprendre son objectif.
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 4
4
Scénario de code pré-écrit
•Imaginez une application bancaire
•Que doit faire une application bancaire ?
−Autoriser un utilisateur à : créer un compte, déposer dans le
compte, retirer du compte, afficher le solde du compte et
calculer les intérêts
•Quels sont les composants d'une application bancaire ?
−Comptes
•Que doit faire chaque composant ?
−Créer, déposer et retirer
JP 2-1
Utilisation de code pré-écrit Droits d'auteur © 2020, Oracle et/ou ses filiales. Tous droits réservés. 5
5
Étapes pour installer l'étude de cas
JavaBank
1. Déplacez le fichier JavaBank.jar.zip vers un
emplacement sur votre
ordinateur
2. Ne décompressez pas
le fichier !
3. Lancer Eclipse
JP 2-1
Travailler avec-Code
Pre écrit Copyright ©
2020, Oracle et/ou ses filiales. Tous droits réservés.
6
6
Étapes pour importer des fichiers de code dans
Workspace
5. Cliquez sur Fichier, puis sur Importer. 6.
Développez le dossier Général 7. Sélectionnez des
projets existants dans Workspace 8. Cliquez sur Suivant
9. Cliquez sur Sélectionner un fichier d'archive, puis sur
Parcourir. 10. Localisez le fichier JavaBank.jar.zip sur
votre ordinateur local et cliquez sur Ouvrir
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 7
7
Étapes pour importer des fichiers de code dans
Workspace
11. S'assurer que le projet
JavaBank(/) est coché
JP 2-1
Travailler avec Pre
-Code écrit Copyright ©2020, Oracle et/ou ses filiales. Tous droits réservés. 8
8
Lancement de JavaBank
1. Développez JavaBank
le projet
2. Développez le package par défaut
3. Double-cliquez sur le fichier JavaBank.java
9
Lancement de
JavaBank
5. Le JavaBankLa fenêtre apparaîtra
JP 2-1
Travailler avec Pre
-Code écrit Copyright ©2020, Oracle et/ou ses filiales. Tous droits réservés. 10
10
Expérimentation avec JavaBank
•Tâche rapide
−Ouvrez et examinez le code des classes
suivantes :
• Compte
• Compte de crédit
11
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 11
12
Expérimentation avec JavaBank
• Solution de tâche
1. Combien de champs d'instance existe-t-
− Compte
il ? –3
− Compte de crédit– 4 (1 local, 3 Super)
2. Combien de constructeurs et en quoi diffèrent-ils ?
− Compte – 2, Aucun paramètre, 3 paramètres.
− Compte de crédit- 2, Aucun paramètre, 3 paramètres.
3. Quelle est la relation entre les classes ?
− Compte est la superclasse de la sous-classe Compte de crédit
JP 2 -1
Travailler avec Pre-Code écrit Copyright © 2020 , Oracle et/ou ses filiales. Tous droits réservés. 12
13
Expérimentation avec JavaBank
•Tâche rapide
−Regardez les classes de pilotes d'essai :
• testBank
• testCreditAccount
14
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 13
15
Expérimentation avec JavaBank
• Solution de tâche
1. Donnez un bref aperçu du but de chaque classe.
• Ils testent la création et l'utilisation de comptes ou de comptes de crédit.
• Ils testent également les méthodes internes de chaque classe.
3. Pouvez-vous créerCompte
un de crédit
objet sans avoir
accéder à la classe Compte ? - No
n
JP 2 -1
Travailler avec Pre-Code écrit Copyright © 2020 , Oracle et/ou ses filiales. Tous droits réservés. 14
16
Examen du code pré-écrit
•Lorsque vous recevez un programme (tel que JavaBank)
et que vous n'êtes pas familier avec le code, il est
important que vous expérimentiez l'application et que
vous examiniez le code sous-jacent.
•L'utilisation de l'application permet d'identifier les
modifications et les fonctionnalités supplémentaires qui
peuvent être ajoutées
•L'examen de l'application ainsi que du code sous-
jacent vous permet de vous familiariser avec le
fonctionnement de l'application
17
JP 2-1
Utilisation de code pré-écrit Droits d'auteur © 2020, Oracle et/ou ses filiales. Tous droits réservés. 15
18
Considérations lors de l'examen du code
•Lors de l'examen du code, gardez les points suivants à
l'esprit :
•Rechercher des commentaires dans le code
Les commentaires d'une seule ligne sont précédés d'une double barre
oblique
19
1. Examinez chaque classe et lisez les commentaires pour mieux
comprendre la structure du programme
JP 2-1
Utilisation de code pré-écrit Droits d'auteur © 2020, Oracle et/ou ses filiales. Tous droits réservés. 16
20
Techniques lors de l'examen du code
•Voici d'autres techniques à essayer lors de la lecture de
code :
−Réexécuter l'application
−Apprendre la structure de haut niveau du code, puis trouver le
point d'entrée et comment il se ramifie à partir de là
−Comprendre les constructions
−Effectuer des tests
−Si vous avez toujours du mal à comprendre le code, demandez à
quelqu'un d'autre ce qu'il en pense.
−Contacter d'autres programmeurs dans un forum de
programmeurs
21
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 17
22
La classe de compte
•Tâche rapide : examinez la classe Compte et notez le
nombre de :
1. Constructeurs
−Quelles valeurs sont affectées aux champs de chaque constructeur ?
2. Méthode
−Combien de méthodes sont les accesseurs ?
−Combien de méthodes sont les mutateurs ?
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 18
18
Constructeurs dans la classe de
compte
• Solution de tâche : 1. Constructeurs
− Le constructeur par défaut définit :
• Nom du compte sur NULL (vide)
• Numéro de compte à 0
• Solde à 0.
Compte()
JP 2 -1
Travailler avec Pre-Code écrit Copyright © 2020 , Oracle et/ou ses filiales. Tous droits réservés. 19
24
Méthode Description
public vide Dépôt(int amt) Met à jour le solde avec un montant de dépôt
Méthodes de la classe de
Met àcompte
public vide retirer(int amt)
jour le solde avec un montant de retrait
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 20
25
Test des classes de manière isolée
•Lorsque vous créez une classe, il est recommandé de la
tester indépendamment avant de la tester dans
l'application pour détecter les problèmes dans ce code.
−C'est ce qu'on appelle les tests d'isolement ou les tests unitaires
−L'objectif principal des tests unitaires est de vérifier qu'une
unité individuelle (une classe, en Java) fonctionne
correctement avant d'être combinée avec d'autres
composants du système.
•Après avoir créé la classe, testez-la de manière isolée en
créant un petit programme qui appelle les
constructeurs, les modificateurs et les accesseurs
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 21
21
26
Exemple de programme de
test unitaire
• L'exemple de programme de test unitaire (testBank.java) ci-
possède
dessous une main et crée des instances de la classe
Account
TestBank.java
est un programme
test unitaire.
pour
JP 2-1
Travailler avec Pre
-Code écrit Copyright ©2020, Oracle et/ou ses filiales. Tous droits réservés. 22
JP 2-1
Utilisation de code pré-écrit Droits d'auteur © 2020, Oracle et/ou ses filiales. Tous droits réservés.
23
La méthode de dépôt
•Il s'agit du code de la méthode de dépôt de la classe
Compte
Dépôt public annulé (Int Amt)
{ solde = solde + amt ;
Dépôt de la méthode }//end
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 24
28
La méthode getaccountname
•Vous trouverez ci-dessous le code de la méthode
getAccountName
Chaîne publique getAccountName()
{ return
accountName ;
Méthode }//end getAccountName
•Lorsque getAccountName() est appelé, la valeur de
accountName pour l'instance de compte en cours est
renvoyée à la méthode appelante
•Des actions similaires sont effectuées par les méthodes
getAccountNum et getBalance
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 25
25
Héritage
•L'héritage se produit lorsque vous avez une classe qui est
une classe parente (appelée superclasse) et une autre
classe qui est une classe enfant (appelée sous-classe)
•La classe enfant est dite dérivée de la classe parente
•La raison d'avoir une classe enfant est de garder les
informations séparées
•L'enfant peut hériter de toutes les méthodes et
champs de son parent, mais peut alors agir de
L'héritage peut être défini comme le processus par lequel un objet
acquiert les propriétés d'un autre.
manière autonome
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 26
26
Extension de la classe de compte
•Supposons que vous souhaitiez créer un nouveau type de
compte qui se comporte différemment d'un compte
standard
•Pour créer ce type, vous pouvez étendre la classe Account
•Envisager un compte de crédit
•Une sous-classe qui traite des informations Compte
sur le montant du crédit associé à un compte champs
peut être créée en tant que sous-classe Comportements
Compte de crédit
champ
s
Comportemen
ts
JP 2-1
Utilisation de code pré-écrit Droits d'auteur © 2020, Oracle et/ou ses filiales. Tous droits réservés. 27
27
Utilisation du mot-clé extend
•Utiliser le mot-clé extend lors de la création d'une sous-
classe qui étend une classe existante
public class CreditAccount étend le compte{
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 28
28
Tâche d'héritage
•Tâche rapide : examiner la relation entre le
Classe de compte et classe Compte de crédit
1. Champs d'instance
• Combien de champs d'instance sont associés à un compte de crédit ?
2. Constructeurs
• Dans quel ordre les classes sont-elles construites ?
3. Méthode
• Comment est-il possible que la méthode d'impression CreditAccount
puisse accéder aux champs d'instance de la classe Account ?
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 29
29
Solution suggérée pour l'héritage
1. Champs d'instance
− Nombre de champs d'instance associés à un crédit
compte? - 4 champs d'instance (1Compte
dans de crédit
,3
Compte) pouces
2. Constructeurs
− Dans quel ordre les classes sont-elles construites
– Compte
? –
Compte de crédit
3. Méthode
− Comment est-il possible que
Compte
l' de crédit
La méthode
accéder aux champs d'instance de la classe Compte
– Champs
? peut
d'impression dans le
Classe de compte
ont défaut visibilité
JP 2 -1
Travailler avec Pre-Code écrit Copyright © 2020 , Oracle et/ou ses filiales. Tous droits réservés. 30
30
ArrayList ou Array ?
•En Java, un tableau a une longueur fixe
•Une fois la baie créée, le programmeur doit connaître la
longueur de la baie car elle ne peut pas croître ou réduire
en taille.
•Si vous ne pouvez pas prédire le nombre d'objets que
vous allez stocker, vous pouvez utiliser un ArrayList au
lieu d'utiliser un Array de longueur fixe
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 31
Opérations ArrayList
•Dans un tableau, vous devez connaître la longueur et le
nombre actuel d'éléments stockés
•Dans un ArrayList, vous pouvez utiliser des comportements
prédéfinis pour effectuer ces opérations
−IsEmpty : renvoie true si cette liste ne contient aucun élément
36
−size : renvoie le nombre d'éléments de cette liste.
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 32
JP 2-1 3
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 3
37
ArrayList ou Array ?
•L'application JavaBank utilise des tableaux pour stocker
les données dans les comptes
•Les méthodes de création, de retrait, de dépôt et
d'affichage manipulent les données pour produire le
résultat souhaité
JP 2-1
Utilisation de code pré-écrit Copyright © 2020, Oracle et/ou ses filiales. Tous droits réservés. 34
38
tiliser les opérations ArrayList pour ajouter, supprimer,
rechercher, etc.
JP 2-1
Utilisation de code pré-écrit Droits d'auteur © 2020, Oracle et/ou ses filiales. Tous droits réservés. 35
Terminologie
•Les termes clés utilisés dans cette leçon sont les suivants :
−Applicateurs
−Liste des tableaux
−Héritage
−Essais d'isolement
−Mutateurs
JP 2-1
Utilisation de code pré-écrit Droits d'auteur © 2020, Oracle et/ou ses filiales. Tous droits réservés. 36
39
Résumé
• Dans cette leçon, vous devriez avoir appris à :
−Lire et comprendre un-préprogramme Java écrit composé
de classes et d'objets en interaction
−Appliquer le concept d'héritage dans les solutions de problèmes
−Tester les classes de
−manière
Décrivez isolée
quand il est plus approprié d'utiliser
Liste des
un
que
un tableaux
tableau
JP 2-1
Travailler avec Pre
-Code écrit Copyright ©
2020, Oracle et/ou ses filiales. Tous droits réservés.37
40
38