C贸mo herdo valores??
no se como heredar valores de las variables de una clase a otra me ayudan??
esque tengo un .class que me hace la conexi贸n a una bd y ahora necesito que el valor de la conexi贸n pueda utilizarlo en otro .class es mas a la hora de hacer click en un bot贸n necesito hacer uso del valor de la varibale. asi mismo necesito heredar otros valores.
para no poner un codigo grandote lo resumo en este, la idea final es la misma.
clase en la que quiero poner mis variables globales
public class Class_1 {
public String p;
}
clase en la que asigno el valor a una de mis variables globales.
public class Cla extends Class_1{
public String c="c";
public static void main(String db_str[]) {
Class_1 h= new Class_1();
h.p="p";
}
}
clase en la que necesito el valor que asigne en la clase anterior, mas sin enbargo me da null
public class hereda extends Cla {
public static void main(String[] args) {
Cla h= new Cla();
System.out.println("prueba de herencia");
System.out.println(h.p); //imprime nulo, cuando lo que quiero es que me imprima el valor de p
System.out.println(h.c);
}
En d贸nde estoy mal? no estoy referenciando bien la variable?, c贸mo lo hago?
se lo agradecer茅 de antemando
mil gracias!!!
saludos
esque tengo un .class que me hace la conexi贸n a una bd y ahora necesito que el valor de la conexi贸n pueda utilizarlo en otro .class es mas a la hora de hacer click en un bot贸n necesito hacer uso del valor de la varibale. asi mismo necesito heredar otros valores.
para no poner un codigo grandote lo resumo en este, la idea final es la misma.
clase en la que quiero poner mis variables globales
public class Class_1 {
public String p;
}
clase en la que asigno el valor a una de mis variables globales.
public class Cla extends Class_1{
public String c="c";
public static void main(String db_str[]) {
Class_1 h= new Class_1();
h.p="p";
}
}
clase en la que necesito el valor que asigne en la clase anterior, mas sin enbargo me da null
public class hereda extends Cla {
public static void main(String[] args) {
Cla h= new Cla();
System.out.println("prueba de herencia");
System.out.println(h.p); //imprime nulo, cuando lo que quiero es que me imprima el valor de p
System.out.println(h.c);
}
En d贸nde estoy mal? no estoy referenciando bien la variable?, c贸mo lo hago?
se lo agradecer茅 de antemando
mil gracias!!!
saludos
El problema es que al crear el objeto h de la clase Cla dentro de la clase Cla, se llama al constructor por defecto de la clase Cla y como muestras en el c贸digo no hay tal por lo que se toma un constructor que no hace nada. Adem谩s donde inicializas el atributo heredado p en la clase Cla es en el m茅todo main que creo que no se va a ejecutar ya que es el proceso que se toma cuando la ejecuci贸n de la aplicaci贸n se inicia en la clase Cla. Si ese mismo c贸digo estubiera en el constructor s铆 tendr铆as inicializada el atributo p.
De todas maneras creo que tienes problemas con los conceptos de herencia ya que si est谩s heredando en la clase hereda la clase Cla no tendr铆as porqu茅 crear un objeto de esa misma clase.
Saludos y felices fiestas.
De todas maneras creo que tienes problemas con los conceptos de herencia ya que si est谩s heredando en la clase hereda la clase Cla no tendr铆as porqu茅 crear un objeto de esa misma clase.
Saludos y felices fiestas.
