martes, 13 de octubre de 2015

Sobreescritura de Metodos

una clase al heredar de una superclase tiene derecho a re-difinir los metodos de la clase padre (es decir si dicho metodo no esta definido como final), osea que puede crear metodos con el mismo nombre de su superclase. Si tengo una clase padre que tiene un metodo Estudiar(), yo puedo crear en la clase hijo un metodo que tambien se llame Estudiar () pero implementandole caracteristicas
especificas para los objetos de la subclase.

veamos un ejemplo:

//la superclase (clase padre)
public class padre {
//metodo estudiar
public String Estudiar ()
{
 return "enfermeria";
}
    
}


//la subclase(clase hijo)
//esta heredando de la clase padre
public class hijo extends padre {
    
   //metodo Estudiar (propio de la clase hijo)
  public String Estudiar ()
  {
    return "sistemas";
  }
  
  public static void main (String [] args)
  {hijo h1=new hijo();
   h1.Estudiar();
   // muestra lo que retorna del metodo Estudiar de la clase hijo ("sistemas")
      System.out.println(h1.Estudiar());
  }
}
En el ejemplo vemos que una subclase puede elegir o no convenientemente usar el metodo de la superclase o si no crear su propio metodo que tenga el mismo nombre pero inplementando caracteristicas propias de la subclase es decir una clase hijo puede crear sus metodos independientemente de la clase padre.

No hay comentarios.:

Publicar un comentario