Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : héritage [ Divers / Débutant(e) ] (dunith)

jeudi 24 janvier 2008 à 09:22:11 | héritage

dunith

bonjour

j'ai une classe mère TAbstractProtocol de type abstract ( avec un sonstructeur), et qui implémente une interface  IDecodeBufferOUT

// interface IDecodeBufferOUT
interface IDecodeBufferOUT
{
    boolean DecodeBuffer(int[] buffer, TCmdQueue FileAttente);
}

// la classe mère
abstract class TAbstractProtocol implements IDecodeBufferOUT
{
   //constructeur avec paramètre d'entrée buffer d'entrée
       TAbstractProtocol(byte[] bufferIn) {};
}

et j'ai créer un calss fille TATHMProtocole aillieurs, et j'ai déclaré le constructeur TATHMProtocole comme suit:

abstract class TATHMProtocole extends TAbstractProtocol 
{
   // constructeur avec paramètre d'entrée le buffer d'entrée
    TATHMProtocole (byte[] bufferIn) 
    {
        super(bufferIn);
     };
}
ma question:
est ce que mon constructeur de ma classe fille est bien déclaré, en mettant :super(bufferIn);

merci

jeudi 24 janvier 2008 à 11:52:38 | Re : héritage

super_toinou

Réponse acceptée !
Hello, oui ! De tte facon si tu mettais pas super(bufferIn) ca ne compilerai pas vu qu'il n'y a pas de constructeur par défaut dans ta class mère. ++ Toinou

jeudi 24 janvier 2008 à 12:23:12 | Re : héritage

dunith

salut

1/ si je met un costruteur dans ma classe fille sans mettre super(bufferIn);

 TATHMProtocole (byte[] bufferIn) 
  {
  };

il m'affiche erreur 1

2/ et si ne met pas de constructeur dans ma classe fille, il m'affiche les deus erreurs.
erreur1: TAbstractProtocol(int[]) in TAbstractProtocol cannot be applied to()
erreur2:  abstract class TATHMProtocole extends TAbstractProtocol

3/met si je met dans ma classe fille, mon constructeur, il m'affiche pas d'erreur,mais je ne sais si c'est juste ou non ce que j'ai fait? 
abstract class TATHMProtocole extends TAbstractProtocol 
{
   // constructeur avec paramètre d'entrée le buffer d'entrée
    TATHMProtocole (byte[] bufferIn) 
    {
        super(bufferIn);
     };

merci

jeudi 24 janvier 2008 à 14:23:35 | Re : héritage

super_toinou

Réponse acceptée !
Re, 1) normal : TATHMProtocole (byte[] bufferIn) { }; implique implicitement (c est une norme en java) TATHMProtocole (byte[] bufferIn) { super() }; or ta super classe n'a pas de constructeur vide cad TAbstractProtocol() or il n existe pas puisque tu as défini TAbstractProtocol(byte[] bufferIn) {}; donc ca marche pas 2)pas de constructeur dans ta classe fille implique (c est toujours une norme en java) TATHMProtocole (byte[] bufferIn) { }; et tu te retrouves dans le cas n°1 3) Oui c est juste !! Cf mon post d avant ! ++ Toinou

jeudi 24 janvier 2008 à 14:41:19 | Re : héritage


Cette discussion est classé dans : entrée, constructeur, tabstractprotocol, bufferin, tathmprotocole


Répondre à ce message

Sujets en rapport avec ce message

instancier d'une classe fille [ par dunith ] bonjour j'ai une clesse fille de type absrtactabstract class TRFPPProtocol extends TAbstractProtocol abstract class TAbstractProtocol implements IDe KeyListener [ par romainbisson ] Salut,j'ai un probleme avec Keylistenerdans ma classe, j'ai plusieurs contructeur, et bien sur chaque constructeur a des actions avec les touches. par méthode indexOf [ par dunith ] bonjour je voudrais utiliser la sonction indexOf mais je ne sais pas si c'est juste ou non:void DecodeReponse(TRep reponse, TCmd Cmd) {        if (rep point d'entrée a DllRegistreServer [ par mariam1987 ] salut, j'ai un pb avec l'ocx ( jacob.dll) que j'ai telecharger a l'adresse http://danadler.com/jacob/j'arrive pas a le faire entre dans la base de reg appeler le constructeur d'une class [ par ge17 ] Bonjour.Je voulais savoir si on pouvait, à partir d'une première class, appeller le constructeur d'une seconde class.Et si c'est possible, avec quel c JTable et touche entrée du clavier [ par gaouinformaticien ] gaouinformaticiensalut à tous.je travaille sur une jtable à 5 colonnes.je voudrais que lorsque j'appuie sur la touche entrée du clavier que le  curseu constructeur(code non compris)! [ par limalima ] Bonjour à tous , j'ai un code dont je ne comprends pas le résultat:deux classes:  Test_C et  D  (avec D extends Test_C)chaq Est ce possible? [ par VinZzZ ] Je me pose un question auquel j'espère quelqu'un aura une réponse, mais peut être que ce n'est pas possible en Java??On a crée une classe mère A et un Est ce possible? [ par VinZzZ ] Je me pose un question auquel j'espère quelqu'un aura une réponse, mais peut être que ce n'est pas possible en Java??On a crée une classe mère A et un Est ce possible? [ par VinZzZ ] Je me pose un question auquel j'espère quelqu'un aura une réponse, mais peut être que ce n'est pas possible en Java??On a crée une classe mère A et un


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,203 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.