Ver Mensaje Individual
  #2 (permalink)  
Antiguo 04/04/2007, 13:51
Avatar de Xinef
Xinef
 
Fecha de Ingreso: marzo-2007
Mensajes: 202
Antigüedad: 17 años, 10 meses
Puntos: 7
Re: Como validar throws Exception?

Es un poco rara tu clase, puesto que recibe una estación y se la asigna a todo el array.

De hecho, no hay ningún constructor que haga al array...

Pero vamos, como sólo preguntas por el tema de las excepciones...

Cita:
Iniciado por m16u3l Ver Mensaje
Código PHP:
public class Tiempo{
    
    
String Epocas[];
  
int i;

public 
String getepocas(){
          return 
epocas[i];
    }   
    public 
void setepocas(String tiempothrows Exception{
      
epocas=new String[3];
      
      if (!
"invierno".equals(tiempo) && !"primavera".equals(tiempo) && !"otoño".equals(tiempo) && !"verano".equals(tiempo) {
        throw new 
Exception("No es una estación válida");
     } else {
          for( 
0<= epocas.lengthi++) {
          
epocas[i] = tiempo;
      }   
     } 

Con esto cuando llames al método setEpocas, tendrás que capturar la excepcion que lanza:

Código PHP:
     try {
         
objeto.setEpoca("prueba");
     } catch (
Exception e) {
          
System.err.println("Error: " e.getMessage());
     } 
He usado Exception, pero lo suyo sería crear una clase que heredara de Exception: TiempoException, por ejemplo.

Otra solución sería controlar la excepción dentro de tu método setEpoca, pero no es recomendable, puesto que tendrías que especificar de otra forma que el método ha fallado... así, lo mejor es elevar una exceptión, y que el código superior se las apañe... :)