Java
Supposons que l’on souhaite ajouter une classe gé nérique de laquelle toutes les formes géométriques hériteraient. Cette superclasse générique ne serait jamais instanciée et on pourrait, dès lors, éfinir celleci comme une classe abstraite. Cela se fait à l’aide du motclé abstract utilisé, par exemple, être modifiée et doit dès lors être initialisée dès sa déclaration ; avec une méthode : il empêche toute redéfinition de la méthode déclarée comme telle ; avec une classe : il empêche d’hériter de la classe déclarée comme telle ; celle-ci ne pourra donc jamais être une superclasse.
Dans la hiérarchie des classes, on retrouvera donc les classes abstraites « en haut » et les classes finales « en bas ». c) Interfaces Une interface est une classe particulière qui présente uniquement es méthodes publiques et abstraites ; des données publiques, statiques et finales. Une telle interface est définie à l’aide du mot clé interface en lieu et place du motclé class : public interface Nomlnterface Une classe voulant implémenter l’interface le fera à l’aide du motc lé implements : public class NomClasse implements Nom Interface UMONS/Polytech Pierre Manneback, Sébasti 2 6 nt bien les méthodes nécessaires à ce dialogue.
On adoptera la convention de nommage des en utilisant le suffixe « able » (e. g. Comparable, Drawable, etc. ). d)Création d’une documentation à l’aide de javadoc interfaces L’utilitaire javadoc permet la création de fichiers HTML destinés documenter un ensemble de classes. La documentation de l’API Java présentée sur le site (http://java. sun. com/javase/6/docs/api i’) a été générée à partir de cet utilitaire. Celui ci se base sur l’insertion de commentaires spéciaux et de balises à l’intérieu r du code source pour en créer une description claire et précise.
De tels comm entaires doivent toujours commencer par / et se terminer par Exemple de commentaires documentés *l Des balises particulières permettent d’ajouter des informations qui seront insérées dans la ocumentation (voir annexes). Une fois le code créé et commenté, la génération de la documentation se fait de la manière suivante : javadoc options packages sources @fichiers où packages et sources sont respectivement la liste des packages et la liste des fichiers sources à documenter.
Quant à @fichiers, il désigne un fichier contenant I es noms de packages à transmettre l’utilitaire javadoc. Dans la partie options, le paramètre d suivi d’u n chemin spécifie l’emplacement vers lequel sera enregistré les f générés et le paramètre li 3 Cet exercice a pour but d’illustrer l’utilisation des classes abstraite Le salaire d’un ensemble d’employés doit être calculé.
Ces emplo yés sont répartis en 3 catégories et donc en 3 classes distinctes : EmployeFixe : recevant un salaire fixe : EmployeCommssion (salaire mensuel = salaire) ; (salaire mensuel salaire + ventes * commission) ; EmployeHoraire : recevant un traitement de base plus un pourcentage lié à ses ventes . : recevant une paie selon le nombre d’heures prestées : (salaire mensuel = taux horaire * heures prestées). Le nom et le salaire de chaque employé doivent pouvoir être obte nus.
On suppose connaître les quantités vendues et le nombre dheures prestées au moment de a création de l’employé (ces données représentées par un type entier doivent toutefois pouvoir être m odifiées ultérieurement). 4 fera simplement de la manière suivante : salaire mensuel = rétrib ution par pièce * production. À nouveau, une classe de test sera établie, construira un tableau reprenant les 4 types de personnes rétribuables et en affichera le salaire. Remarque : la classe OuvrierPiece ne peut p as hériter d’une quelconque classe de type Employe déjà définie.