Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3140 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Classe abstraire et Interface

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Classe abstraire et Interface

n°1969857
Onita
Posté le 27-02-2010 à 15:51:51  profilanswer
 

Bonjour à  tous,  
 
J'ai du mal a comprendre quelque chose. Je vais vous expliquer le contexte avant :
 
Dans une entreprise, il y a des employees (normal  :pt1cable: ) mais ils ont des fonctions différentes :
 
. Les secrétaires  
· Les directeurs
· Les chefs de projet  
· Les développeurs
 
Chaque employé est caractérisé par un nom, un prénom, une adresse, une ville.
Un chef de projet est responsable d’un projet. Il peut être affecté à un autre projet.
Un secrétaire a un numéro de bureau.
Un développeur a un numéro d’équipe. Il peut aussi bien changer d’équipe.
Le directeur a un numéro de département.
Pour l’ensemble des employés, il sera possible de modifier leur nom et leur prénom ainsi
que leur adresse.
A l’exécution, nous souhaitons connaître le nombre total d’employés, et le détail pour
chaque département.
 
Je vois ça comme ça : Employée en classe abstraite, secrétaire et directeur en héritage, chef de projet et développeur en implémentation.
 
Est ce que je me trompe ?
 
Merci d'avance?

mood
Publicité
Posté le 27-02-2010 à 15:51:51  profilanswer
 

n°1969863
lasnoufle
La seule et unique!
Posté le 27-02-2010 à 16:38:30  profilanswer
 

Ouai, je pense que tu te trompes. C'est pour un exercice je suppose?
 
Chef de projet et développeur en implémentation de quoi? Il te faut une interface pour ca, et t'en as pas.
 
Après, je vois pas pourquoi tu veux te compliquer la vie: t'as 4 sortes d'employés, je vois pas le souci:
- employé en classe mère (et abstraite si t'es sur que chaque employé devra forcément appartenir à une des tes 4 catégories),
- les 4 autres en classes filles qui héritent de employé,
- méthodes pour gérer nom, prénom, addresse et ville dans la classe employé,
- après l'énoncé est pas très clair à propos des départements.
 
Mais bon c'est tellement évident... Si t'arrives pas conceptualiser ca tout seul, t'es mal barré pour la suite.


---------------
C'était vraiment très intéressant.
n°1969868
Onita
Posté le 27-02-2010 à 16:53:19  profilanswer
 

Merci pour ta réponse même si elle quelque peu agressive...
 
Bien avant d'avoir eu mon cours sur l'héritage et l'implémentation, j'avais fait EXACTEMENT comme tu as dit le seule souci c'est qu'à la fin du cours, il nous a demandé d'intégrer l'implémentation dans cette exercice : Notion que j'ai du mal à saisir malgré les nombreux cours que j'ai pu lire sur le net.
 
Lorsque mon prof nous a présenté son cours, il nous a pas donné d'exemple concret donc j'ai eu du mal a saisir quand utiliser quoi.
 
Donc si tu es sur qu'il n'y aura pas d'implémentation je vais le faire sans mais bon je doute un peu quand même...
 
Est ce qu'il est possible de faire ceci :
 

Code :
  1. public abstract void employee();

Message cité 1 fois
Message édité par Onita le 27-02-2010 à 17:06:07
n°1969877
lasnoufle
La seule et unique!
Posté le 27-02-2010 à 17:39:17  profilanswer
 

Onita a écrit :

Merci pour ta réponse même si elle quelque peu agressive...
 
Bien avant d'avoir eu mon cours sur l'héritage et l'implémentation, j'avais fait EXACTEMENT comme tu as dit le seule souci c'est qu'à la fin du cours, il nous a demandé d'intégrer l'implémentation dans cette exercice : Notion que j'ai du mal à saisir malgré les nombreux cours que j'ai pu lire sur le net.
 
Lorsque mon prof nous a présenté son cours, il nous a pas donné d'exemple concret donc j'ai eu du mal a saisir quand utiliser quoi.
 
Donc si tu es sur qu'il n'y aura pas d'implémentation je vais le faire sans mais bon je doute un peu quand même...
 
Est ce qu'il est possible de faire ceci :
 

Code :
  1. public abstract void employee();



Techniquement, c'est valide. Après, c'est une déclaration de méthode que tu fais là, donc je sais pas trop ce que tu veux faire avec.
 
Bon, pour revenir à l'interface, déjà, tu pourras dire à ton prof qu'il pourrait faire un effort et vous trouver des exemples et exercices ou ca sert vraiment, histoire que vous puissiez voir par vous-meme...
 
Pour faire simple, l'interface, comme son nom l'indique, ca définit juste les méthodes que tu vas pouvoir appeller.
Si tu veux en utiliser une dans ton exercice, ca sera pour l'employé. Tu auras:
- une interface Employe, qui va définir les getters/setters pour nom, prénom, adresse, ville, dans ce style là (je condense le code, ajoutes le reste, mets des commentaires toussa, et je sais plus s'il y a besoin de mettre public ou autre chose devant les méthodes):

Code :
  1. public interface Employe {
  2.        void setNom(String nom);
  3.        String getNom();
  4. }


- une classe EmployeImpl, qui implémente Employe et devra donc fournir une implémentation de toutes ses méthodes. Tu peux la mettre abstraite comme avant:

Code :
  1. public abstract class EmployeImpl implement Employe {
  2.        String nom;
  3.        public void setNom(String nom){this.nom=nom;}
  4.        public String getNom(){return nom;}
  5. }


- après tu reprends les classes que tu avais déjà pour les types d'employés, qui vont hériter de EmployeImpl.
Et c'est gagné. Enfin, je suppose que c'est ca que ton prof veut; tu pourrais aussi implémenter l'interface directement dans chaque classe "finale" mais c'est un peu con vu qu'il faudra que tu recopies l'implémentation des getters/setters dans chaque classe.


---------------
C'était vraiment très intéressant.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Classe abstraire et Interface

 

Sujets relatifs
Petit projet: classe PHP, framework ou pas ?Interface java
probleme java interface graphiqueCaste de classe ?
[Spring] Classe de constantes chargé à partir d'une BDDInstanciation d'une classe dans le scope global à partir dun namespace
[PHP/MySQL] Créer une interface d'affichage multimédiaDoxygen (problème avec des noms de variable/de classe)
[Resolu][C++] Question Architecture avec interface multipleReprésentation en mémoire d'une classe, assembleur
Plus de sujets relatifs à : Classe abstraire et Interface


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR