<java>demande conseil sur ce prg

domxaline Messages postés 204 Statut Membre -  
 domxaline -
bonjour
j'ai essayé ce prg suivant

package Essaie;
public class Cube1
{
int length;
int breadth;
int height;

public int getVolume()
{
return (length*breadth*height);
}
Cube1()
{
this(10,10);
System.out.println("Finished with default constructor");
}
Cube1(int l,int b)
{
this(l,b,10);
System.out.println("Finished with parameterized constructor having 2 params");
}
Cube1(int l,int b,int h)
{
length=10;
breadth=10;
height=10;
System.out.println("Finished with parameterized constructor having 3 params");
}
}
package Essaie;
public class Rectangle
{
public static void main(String[]args)
{
Cube1 cubeObj1,cubeObj2;
cubeObj1=new Cube1();
cubeObj2=new Cube1(10,20,30);

System.out.println("volume of Cube1 is:"+cubeObj1.getVolume());
System.out.println("volume of Cube2 is:"+cubeObj2.getVolume());
}
}

le output ce ce prg est le suivant
Finished with parameterized constructor having 3 params
Finished with parameterized constructor having 2 params
Finished with default constructor
Finished with parameterized constructor having 3 params
volume of Cube1 is:1000
volume of Cube2 is:1000

mes questions sont suivantes:
1.normalement volume of cube2 is:6000; pourquoi j'ai 1000,où je puis faire erreur?
2.pourquoi output est désordonné au lieu de avoir comme ceci
Finished with default constructor
Finished with parameterized constructor having 2 params
Finished with parameterized constructor having 3 params
3.et pourquoi j'ai deux fois la ligne suivante?
Finished with parameterized constructor having 3 params

5 réponses

  1. domxaline Messages postés 204 Statut Membre 10
     
    pour le question n°1 j'ai trouvé la réponse
    volume of Cube2 is:6000
    aidez moi pour les questions restant
    0
  2. francis
     
    Salut,

    Tu l'as lu au moins ton code ?
    0
  3. domxaline Messages postés 204 Statut Membre 10
     
    oui,j'en train d'apprendre java, peut tu m'expliquer s'il te plaît
    0
  4. francis
     
    en premier t'appelles le constructeur par défaut, sans parametre.

    ce constructeur appelle lui meme le constructeur a 2 parametres.

    cet autre constructeur appelle quant a lui celui a 3 parametres.

    celui ci affiche "blablabla 3 parametres", et une fois son execution finie, ça revient dans le second constructeur, qui affiche "blablabla 2 parametres", et une fois finie, ça revient dans le premier constructeur qui affiche "blablabla défault".
    et après ça affiche "blablabla 3 parametres" car tu crée un objet en appellant directement le constructeur a 3 param.

    c'est linéaire :

    maFonction()
    {
    system.out.println("avant blablabla");
    blablabla();
    system.out.println("après blablabla");
    }

    blablabla()
    {
    system.out.println("pendant blablabla");
    }

    ça va t'afficher :
    avant blablabla
    pendant blablabla
    après blablabla
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. domxaline
     
    merci beaucoup t'a allumé ma torche
    0