Principe
Difficulté :
 |
|
Les objets,
on en parle beaucoup en Java.
Mais qu'est-ce que c'est vraiment ? |
|
Dans la vie courante, vous manipulez toutes sortes d'objets : table,
chaise, voiture, bouteille de gaz (eh oui, bouteille de gaz)... Un objet a des
propriétés (dimensions, couleur, matière...) et peut réagir ou non à des actions
(déplacer l'objet, peindre l'objet...). Vous allez retrouver les mêmes principes en
Java.
Si vous avez d'ailleurs parcouru quelques-unes des pages de ce
site, vous avez déjà créé des applets, donc des objets.
L'objet de base
Un objet a une structure de base précise.
En tapant le listing suivant dans votre éditeur de texte favori, vous préparez la
création d'un objet :
public class ObjetDeBase extends Object
{
}
Le listing en détail...
Le listing est très court (pour une fois !), mais il
appelle pas mal de remarques :.
- Le listing ci-dessus doit être tapé dans un fichier texte qui doit
impérativement s'appeler ObjetDeBase.java (ObjetDeBase
étant le nom de l'objet qu'on souhaite créer, et .java indiquant qu'il
s'agit d'un code source Java).
- Les majuscules/minuscules ont leur importance dans le nom de l'objet,
et bien sûr dans le nom du fichier texte. ObjetDeBase n'est pas la même chose que
Objetdebase, ni ObjetDebase, ni OBJETDEBASE. Un peu de rigueur, donc !
- Par convention, le nom d'un objet démarre toujours par une majuscule
(rappelez-vous les objets String, Applet, Graphics que vous connaissez déjà).
- La convention ci-dessus permet aussi de déduire que les types de
données int, boolean, float (entre
autres) ne sont pas des objets au sens Java puisqu'ils démarrent par une minuscule.
- Un objet commence par une déclaration du type :
public class ObjetDeBase extends Object
- On reviendra sur le public plus tard (vous en devinez le sens, non ?)
- Le class indique qu'on commence la création d'une classe d'objet (c'est-à-dire
d'une catégorie d'objet)
- Vient ensuite le nom de l'objet (ici ObjetDeBase)
- Le extends Object signifie que notre objet de base découle d'un objet qui s'appelle lui-même
Object. Tout objet découle d'un autre objet (qui lui sert de modèle, en
quelque sorte), et étend ses possibilités. L'objet Object (pas facile à suivre !) est
le premier de toute la hiérarchie.
Si vous avez lu quelques listings sur ce site, vous avez remarqué que toutes les applets
découlaient de l'objet Applet (du genre : public
class Bonjour extends Applet). L'objet Applet lui-même découle
indirectement de l'objet Object.
A noter que, lorsqu'un objet étend l'objet Object (et celui-là
uniquement), le extends Object est facultatif. On aurait ainsi pu écrire :
public class ObjetDeBase
{
}
Tout ce qui définira l'objet doit être ensuite compris entre 2
accolades (ce qui signifie que l'objet donné en exemple... ne fait strictement rien pour
l'instant !).