Ajouter un commentaire

VonDriguen
Re: Pourquoi ne peut-on pas hériter du constructeur ?

Merci nasix de te pencher sur la question.

Je comprends bien ce que tu dis mais je voudrais pousser la réflexion encore plus loin. Imaginons qu'on a un constructeur surchargé 5 fois :

class A  
 {  
     A(){}  
     A(int i) {}  
     A(String s) {}  
     A(int i, int j) {}  
     A(String s, int i) {}  
 }  

Et que je crée une class B qui hérite de A :
class B extends A {}
Je vais devoir recréer chacun des constructeurs à l'aide du mot-clef super.
Pourquoi les développeurs de Java n'ont pas décidé que, dès que les constructeurs de la classe A sont créés, le compilateur soit assez intelligent pour faire appel à l'un deux lors de la création de B. Cela nous déchargerait de devoir recréer chacun des constructeurs de la classe parent.
Je suis d'accord qu'il faudrait peut-être créer un mot clef pour dire à quelle surcharge l'on veut faire appel !

Je sais que dans d'autres langages (le Delphi par exemple et si ma mémoire ne me trompe pas), que le constructeur est hérité, et nous permet donc un gain de temps considérable lorsque l'on hérite d'une classe qui elle même est déjà héritée d'une autre qui elle-même, etc.

Ma question devient peut-être philosophique et si ça compte, seul les développeurs de java connaissent la réponse... mais je ne perds pas espoir que quelqu'un puisse me répondre :-)

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
 V     V   AA   BBBB   H  H   AA  
V V A A B B H H A A
V V AAAA BBBB HHHH AAAA
V V A A B B H H A A
V A A BBBB H H A A