Todos los m�todos Java utilizan la sentencia throw para lanzar una excepci�n.
Esta sentencia requiere un s�lo argumento, un objeto Throwable. En el sistema Java, los objetos lanzables son ejemplares de la clase Throwable definida en el paquete java.lang. Aqu� tienes un ejemplo de la sentencia throw.
throw algunObjetoThrowable;
Si se intenta lanzar un objeto que no es 'lanzable', el compilador rehusa la compilaci�n del programa y muestra un mensaje de error similar a �ste.
testing.java:10: Cannot throw class java.lang.Integer; it must be a subclass of class java.lang.Throwable. throw new Integer(4); ^
La p�gina siguiente, La clase Throwable y sus Subclases, cuentan m�s cosas sobre la clase Throwable.
Echemos un vistazo a la sentencia throw en su contexto. El siguiente m�todo est� tomado de una clase que implementa un objeto pila normal. El m�todo pop() saca el elemento superior de la pila y lo devuelve.
public Object pop() throws EmptyStackException { Object obj; if (size == 0) throw new EmptyStackException(); obj = objectAt(size - 1); setObjectAt(size - 1, null); size--; return obj; }
El m�todo pop() comprueba si hay alg�n elemento en la pila. Si la pila est� vac�a (su tama�o es igual a cero), ejemplariza un nuevo objeto de la clase EmptyStackException y lo lanza. Esta clase est� definida en el paquete java.util. En p�ginas posteriores podr�s ver c�mo crear tus propias clases de excepciones. Por ahora, todo lo que necesitas recordar es que se pueden lanzar objetos heredados desde la clase Throwable.
�La clausula throws
Habr�s observado que la declaraci�n del m�todo pop() contiene esta clausula.
throws EmptyStackException
La clausual throws especifica que el m�todo puede lanzar una excepci�n EmptyStackException. Como ya sabes, el lenguaje Java requiere que los m�todos capturen o especifiquen todas las excepciones chequeadas que puedan ser lanzadas dentro de su �mbito.
Se puede hacer esto con la clausula throws de la declaraci�n del m�todo.
Para m�s informaci�n sobre estos requerimientos puedes ver Requerimientos Java para Capturar o Especificar.
Tambi�n puedes ver, Especificar las Excepciones lanzadas por un M�todo para obtener m�s detalles sobre c�mo un m�todo puede lanzar excepciones.