Académique Documents
Professionnel Documents
Culture Documents
Pour tre admis en LOG121, vous devez au pralable avoir une comprhension des concepts
suivants1 :
Ce qu'est un attribut
Ce qu'est une mthode
Ce qu'est une classe
Ce qu'est un objet ou une instance
Ce qu'est l'encapsulation
Ce qu'est la surcharge
Ce qu'est la redfinition
Ce quest la rfrence this
Ce qu'est l'hritage par extension
Ce quest la rfrence super
Ce qu'est l'implmentation d'interface
Ce qu'est le polymorphisme
Ce qu'est la gestion vnementielle
Ce que sont les composants SWING et la construction d'cran utilisateur
graphique de style GUI (Graphical User Interface)
Ce qu'est le chanage dynamique
Ce quest la cration, la leve et la gestion dexceptions.
Ce qu'est un type de donnes abstrait (TDA)
Ce qu'est une pile (statique et dynamique)
Ce qu'est une file
"
"
"
Ce qu'est une liste
"
"
"
Exemple :
String chaine;
//dfinition d'un objet de la classe String
chaine = new String("allo"); //Instanciation de l'objet
chaine.charAt(0)
//Appel de la mthode charAt de la classe
//String avec 0 en paramtre effectif, pour
//l'objet nomm chaine.
Encapsulation : Rendre l'utilisation des attributs d'un objet indpendante de leur
implmentation (private). En d'autres termes, on utilise des mthodes pour accder aux
attributs d'une classe plutt que d'y accder directement. C'est ce qui justifie, entre autres,
l'utilisation d'accesseurs (get) et/ou de mutateurs (set). Par exemple : getNom, getAge, setNom,
setAge, ...
La rfrence this
Il existe une rfrence spciale, utilisable dans une mthode non static dune classe, qui permet
dagir sur les attributs de lobjet actuel. Existe sous diffrentes formes selon le langage.
Hritage : En java, nous parlons d'hritage par hirarchie de classes. On peut tendre une
classe l'aide du mot rserv extends. On parle alors d'hritage par extension. Cela permet
d'utiliser le code d'une classe sans avoir le rcrire. Cette dernire devient la classe parent et
on parle de sous-classe pour les classes enfants. En Java, une classe ne peut hriter que d'une
autre classe (pas d'hritage multiple).
Exemple :
public class Point2D
...
public class Point3D extends Point2D
La classe Point3D hrite de tout le code non prive (public ou protected) crit dans la
classe Point2D.
La rfrence super
Au mme titre que la rfrence this, il existe une rfrence spciale qui permet dagir sur les
attributs non privs (public et protected) de la classe parent dans une hirarchie de classe.
Interface : L'implmentation d'une interface (implements), permet de dfinir des mthodes qui
doivent obligatoirement tre implmentes par une classe qui en hrite. Une classe peut
implmenter plusieurs interfaces. Cela permet d'assurer une bonne gestion du
polymorphisme. Une classe qui implmente une interface est une sous-classe de cette interface.
Exemple :
public class PanneauQuelconque extends JPanel implements ActionListener,
MouseListener
La classe PanneauQuelconque hrite de tout le code non priv (public ou protected)
crit dans la classe JPanel et doit implmenter les mthodes dcrites dans les interfaces
2
Chanage dynamique : Technique de programmation pour crer des TDA dont la taille varie
durant lexcution. Le(s) lien(s) entre les lments doi(ven)t tre maintenu(s) par le
programmeur. Il y a plusieurs techniques de chanage (simple, double, gauche-droit, etc.) et
plusieurs TDA les utilisent.
Pile : TDA dont lajout ou le retrait dobjets se fait toujours partir du dernier lment entr
(Last In First Out).
File : TDA dont lajout dobjets se fait la suite du dernier ajout et le retrait dans lordre
darriv (First In First Out ou Last In Last Out).
Liste : TDA dont lajout ou le retrait dobjets se fait selon les besoins un endroit spcifi. Il
ncessite de fournir la position de lopration. Cela peut diffrer selon le type de liste choisie
(position courante, itrateur ou indexe).
Cration, leve et gestion dexceptions : Il est possible denvoyer des messages dexceptions
(erreurs) dune mthode une autre pendant lexcution du programme. Un message
dexception dmarre lorsquil est lev. partir de ce moment, il est transmis de mthodes
appelantes en mthodes appelantes, en respectant la pile des appels du OS, jusqu ce quelle
soit gre ou que le OS le reoive. ce moment, la pile des appels est affiche lcran avec
le texte associ au message dexception.
Procdure principale: Nous favorisons une classe ddie qui ne contient que le programme
principal.
Exemple :
public class DemarrerApplication{
public static void main(String [] args ){
}
}
Graphical User Interface : Une application GUI se cre dans un cadre (JFrame ou JDialog)
et dispose des composants (JButton, JTextField, JComboBox, JLabel, ) dans diffrents
panneaux (JPanel). Pour accder ces classes, il suffit de les importer partir de
javax.Swing.
Cration, leve et gestion dexceptions : En java, la classe mre de toutes les exceptions est
Exception. La classe qui lve une exception doit lannoncer laide de throws dans son
entte. Une mthode peut lever plusieurs exceptions laide de throw. On gre une exception
laide dun bloc try-catch. On affiche la pile des appels laide de e.printStackTrace() o e est
une instance de la classe Exception. Il est possible dhriter de la classe Exception pour crer
nos propres classe dexceptions.
TDA fournis
Nous vous fournissons deux TDAs qui seront utiliss lors du test de classement. Une pile avec
implmentation dynamique et une file avec implmentation statique. Les deux classes lvent
des messages dexception. Cest une bonne ide dcrire un petit programme principal pour
tester les mthodes des TDAs.
5