salut est ce que quelqu'un serait capable de me faire ce que fait ce programme, je l'ai fait tourner, il y a des résultats mais je ne le comprends pas. merci a tout ceux qui apporteront uen réponse
public class Test { public class A{ boolean f; public A (int v1) { f=m(v1); } private boolean m(int v1) { System.out.println("A "+ v1); if (v1<0) return true; else return false; } protected int m(int v1, int v2) { System.out.println ("A "+ v1 + " " + v2); if (f) return v1; else return v2; } }
public class B extends A{ public B(int v1) { super(v1); } protected double mm(double v1, int v2) { System.out.println("B "+ v1 + " " + v2); return v1/m(v2, v2+1); } }
public class C extends A{ public C(int v1, int v2) { super(v1+v2); } protected boolean mmm(int v1, double v2) { System.out.println("C" +v1 +" " + v2); if (v1>v2) return true; else return false; } } public void myMain ( ){ int v1 = 10, v2 = 6; B b = new B(v2); C c= new C (v1,v2); c.mmm(v2, b.mm(1.0 , v1)); b.m(c.m(v1, v2),v1); } public static void main (String[] args ) { Test myTest = new Test(); myTest.myMain(); }
}
réponse:
A 6 A 16 B 1.0 10 A 10 11 C6 0.09090909090909091 A 10 6 A 6 10
Marsh Posté le 17-01-2008 à 15:52:27
salut est ce que quelqu'un serait capable de me faire ce que fait ce programme, je l'ai fait tourner, il y a des résultats mais je ne le comprends pas.
merci a tout ceux qui apporteront uen réponse
public class Test {
public class A{
boolean f;
public A (int v1) {
f=m(v1);
}
private boolean m(int v1) {
System.out.println("A "+ v1);
if (v1<0)
return true;
else
return false;
}
protected int m(int v1, int v2) {
System.out.println ("A "+ v1 + " " + v2);
if (f)
return v1;
else return v2;
}
}
public class B extends A{
public B(int v1) {
super(v1);
}
protected double mm(double v1, int v2) {
System.out.println("B "+ v1 + " " + v2);
return v1/m(v2, v2+1);
}
}
public class C extends A{
public C(int v1, int v2) {
super(v1+v2);
}
protected boolean mmm(int v1, double v2) {
System.out.println("C" +v1 +" " + v2);
if (v1>v2)
return true;
else
return false;
}
}
public void myMain ( ){
int v1 = 10, v2 = 6;
B b = new B(v2);
C c= new C (v1,v2);
c.mmm(v2, b.mm(1.0 , v1));
b.m(c.m(v1, v2),v1);
}
public static void main (String[] args ) {
Test myTest = new Test();
myTest.myMain();
}
}
réponse:
A 6
A 16
B 1.0 10
A 10 11
C6 0.09090909090909091
A 10 6
A 6 10