Java - Herencia

   
Vista:

Herencia

Publicado por Marina (4 intervenciones) el 20/11/2008 20:02:09
Hola!!
Para empezar tengo que decir que estoy aprendiendo a programar en Java, estoy acostumbrada a C, y todavia no controlo las diferencias entre ambos lenguajes.

Tengo una clase A que tiene dos descendientes B y C.
La clase A tiene dos atributos como parametros de entrada en el constructor(a1 y a2).
La subclase B tiene dos atributos como parametros de entrada en el constructor (a1 y a2).
La subclase C solo tiene un atributo como parametro de entrada en el constructor (a1).

El constructor de la clase B lo implemento asi:
public B(int a1, int a2){
super(a1, a2);
}

Mi problema es que no se como programar el constructor de la clase C, porque si lo hago asi me da error al compilar:
public C(int a1){
super(a1);
}

Como lo puedo solucionar??
Gracias de antemano
Un saludo
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

RE:Herencia

Publicado por Mario (199 intervenciones) el 21/11/2008 10:22:50
Bueno, a ver si puedo ayudarte... creo que lo que tendrías que hacer es pensar un valor por defecto para el segundo parámetro. Es decir... el parámetro de la clase C recibiría solamente un parámetro e inicializaría a la clase A (de la cual extiende) con ese valor y otro por defecto:

public C(int x){
super(x, 2);
}

En ese pequeño ejemplo, la clase C recibe una variabl int como parámetro y luego llama al constructor de la clase de la cual extiende con ese valor y otro valor por defecto (en este caso, un dos).

Dependiendo de las funciones de una y otra clase podrás encontrar un valor por defecto que realmente le sirva. De momento es lo único que se me ocurre, la verdad... a ver si tienes suerte ; )

Un saludo!!
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