[Heritage] Gestion des constructeurs

Version imprimable

ok .. ce cas ne se posera pas ... je prefere controler ce qui se passe.

Citation:

Envoyé par adiGuba
  • Enfin l'appel au constructeur parent respecte les mêmes règles de visibilités que les méthodes :
    • S'il est public, il pourra être appelé par n'importe quelle classe.
    • S'il est protected, il pourra être appelé que par les classes filles (ce qui est forcément le cas lorsqu'on hérite) ou les classes du mêmes package.
    • S'il est "package-only" (pas de mot-clef), il pourra être appelé par les classes du même package.
    • Enfin, s'il est private, il ne pourra être appelé que par la classe elle-même ou une classe interne/anonyme.

  • Citation:

    Envoyé par adiGuba

    ok.
    Donc par defaut, tous les constructeurs sont supprimés.
    Ca m'arrange car j'ai un mal fou a me debarasser de certains constructeurs de classes parents sous delphi, qui n'on plus de sens dans la classe fille.


    Citation:

    Envoyé par adiGuba
    Je ne sais pas si c'est clair...

    Tres :)

    Merci !


    a++[/QUOTE]
  • 28/03/2007, 18h08
    adiGuba
    Citation:

    Envoyé par Clorish
    Note : On peu quand meme commencer certaines initialisation avant l'appel de super si besoin est ? par contre je suppose que comme sous delphi il y aura une erreur tant que super n'est pas appelé si on touche aux variables d'instances ....

    Non ! L'appel à super() ou this() doit obligatoirement correspondre à la première instruction... C'est malheureusement parfois un peu gênant.

    a++
  • 28/03/2007, 20h23
    Clorish
    ok. Effectivement c'est restrictif.
    D'un autre cote, on doit pouvoir faire appel a des methodes static qui renseigne des variables static avant un appel au constructeur ?

    Le but etant juste de faire des constructeur paramétré.
    Je ne dit pas que j'en aurais besoin, mais des fois ca m'a rendu service.
    Erreur de conception ou pas .... ca c'est une autre histoire ;)

    merci de toutes ces infos ;)