lunes, 2 de abril de 2012

HERENCIA


En java existe la herencia simple. Es decir, que en java una clase sólo puede tener una superclase directa de la cual puede heredar todos los métodos y datos.


Puede ser que exista una cadena de clases derivadas en que la clase X herede la clase Y y  la clase Y herede la clase Z, pero no podemos  escribir algo como:


class X extends Y , Z ....  // esto sería un error


 Un mecanismo como este de herencia múltiple en Java no existe. 


Tenemos aquí un ejemplo simple de herencia de clases para que les quede más claro.
Lo único que hace es imprimir tres mensajes de diferentes clases, una de ellas heredada.





import java.io.*; 
public class primero {


public static void main(String[]args)throws IOException
{
segundo objeto=new segundo();

System.out.println("Hola como estas");

objeto.mensaje();
objeto.sms();
}
}
-------------------------------------------------------------------------------------------------------------------------



public class segundo extends tercero {


public void sms()
{
System.out.println("En la clase segundo no se encuentra el método mensaje pero en la clase tercero si");
}
}

-------------------------------------------------------------------------------------------------------------------------



public class tercero {

pubhic void mensaje()
{
System.out.println("Muy bien");
}
}

try & catch


Hola ahora presentamos aquí un programa que hace uso de try & catch para que todos ustedes conozcan como es que funciona esta instrucción ya que el programa que presentamos sobre el método de inserción hace uso de esta y nos gustaría que les quedara claro que es lo que hace.
Bien como ya sabemos en java pueden existir ocasiones en que nuestro programa falle, en java a estos errores se le llaman excepciones y para poder manejar excepciones utilizamos el try & catch para el manejo de ellas dentro del programa lo que esta hace es intentar que es lo que try significa en español.

Entre las llaves de try se escribe el código que hará que funcione nuestro programa. Pero para capturar la excepción que este código pueda generar necesitaremos otra instrucción llamada catch (capturar). Entre las llaves de catch vamos a escribir el código que queramos para tratar el error.

Ejemplo:

En este programa se pide que el usuario digite un número entero pero si el usuario digita un número decimal o una letra va a provocar un error de ejecución el cual trataremos mostrando en la pantalla el mensaje de error que hallamos manejado para ello.



import java.io.*; 

public class demo {

public static BufferedReader entrada = new BufferedReader(new inputStreamReader(System.in));

  public static int x;

public static void main(String[] args)

{

  System.out.println("inicio de programa");

  metodox();

  System.out.println("final del programa");

}

public static void metodox() 

{

  try

  { 

 System.out.println("digite un entero");

  x = Integer.parseInt(entrada.readLine());

  System.out.println("valor de x es "+x);

  }

  catch(Exception e)

  {

  System.out.println("no es entero");

  }

}


}