Java - redefinir toString de la Super clase

   
Vista:

redefinir toString de la Super clase

Publicado por Andrea (1 intervención) el 16/11/2014 22:52:42
buenas tardes, estoy aprendiendo programacion orientada a objetos y desarrolle un proyecto que realiza operaciones de cinematica, en si el proyecto esta completo, pero ahora tengo que implementar el encapsulamiento y esto me ha traido varios problemas en este caso, tengo una super clase llamada Mru con los atributos distancia, tiempo y velocidad, de esta parte una subclase Mrua que hereda los atributos y ademas tiene velocidad2 y aceleracion, estos son los respectivos toString;

Mru:

@Override
public String toString() {
return "Distancia= "+ distancia +'\n'+ "Tiempo= " +tiempo + '\n'+ "Velocidad= "
+ velocidad + '\n';
}

Mrua:
@Override
public String toString() {
return super.toString() + "Velocidad final= " + velocidad2 + '\n'+ "Aceleracion= "
+ aceleracion + '\n';
}

hasta ahora ningun problema, aclaro, todos los atributos son private, y es requisito dejarlos asi.
mi problema es con la clase CaidaLibre esta hereda los mismos atributos de Mrua con la diferencia de que distancia debe ser mostrada en consola como su fuera altura altura, y aceleracion como gravedad, y aqui esta mi problema, como hago que en el toString de caida libre los muestre con estos nombres sin alterar el toString de la clase superior Mrua, osea que muestre algo asi;

return "Altura= "+ distancia +'\n'+ "Tiempo= " +tiempo + '\n'+
"Velocidad inicial= " + velocidad + '\n' + "Velocidad final= " +
velocidad2 + '\n'+ "gravedad= " + aceleracion + '\n';

les agradecere mucho su ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

redefinir toString de la Super clase

Publicado por Andrés (231 intervenciones) el 17/11/2014 05:00:48
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
class A {
 
    private int x;
 
    @Override
    public String toString() {
        return "A{" + "x=" + x + '}';
    }
 
    public int getX() {
        return x;
    }
 
    public void setX(int x) {
        this.x = x;
    }
 
}
 
class B extends A {
 
    private int y;
 
     @Override
    public String toString() {
        return super.toString() + "B{" + "y=" + y + '}';
    }
 
    public int getY() {
        return y;
    }
 
    public void setY(int y) {
        this.y = y;
    }
 
}
 
class C extends B {
 
    private int z;
 
     @Override
    public String toString() {
        return "X en A= "+super.getX() + super.toString()+  "C{" + "z=" + z + '}';
    }
 
}
 
Otra:
 
class A1 {
 
    protected int x;
 
    @Override
    public String toString() {
        return "A1{" + "x=" + x + '}';
    }
 
}
 
class B1 extends A1 {
 
    protected int y;
 
     @Override
    public String toString() {
        return super.toString() + "B1{" + "y=" + y + '}';
    }
 
}
 
class C1 extends B1 {
 
    private int z;
 
     @Override
    public String toString() {
        return "X en A= "+super.x + super.toString()+  "C1{" + "z=" + z + '}';
    }
 
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar