Salut !

Voilà c'est une question au sujet de la méthode super().
J'ai une classe A, et une classe B extends A
J'ai remarqué qu'il fallait que j'appelle super() en tout premier dans le constructeur de B, avant toute instruction, meme un petit if.

Mais j'aimerais que mon super(boolean b) donne au constructeur de A true ou false suivant des test de if

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
public class A
{
   public boolean bool;
   public int variable;
 
   public A(boolean b)
   {
        bool = b;
   }
 
   public void modifV()
   {
    // Ici j'ai qq méthodes qui modif des variables de A suivant la valeur de bool
   }
}
 
public class B extends A
{
   public B(int num)
   {
       if (num==1)
       {
             super(true);
             // qq instructions
       }
       else if (num==2)
       {
             super(false);
             // qq instructions
       }
        // encore qq if
   }
 
}
là j'ai aucune idée de comment faire, à moins de recopier comme un bourrin tout A dans B pour ne pas avoir à utiliser super, mais il doit y avoir une meilleure solution

Merci