4# שיעור JAVA

Exception חריגה .1
try {
//       (קוד שברצוננו לבדוק למקרים חריגים (טעויות
}
catch (ExceptiontypeA a) {
//      לטיפול במקרה של חריגה מסוג זה (Handler) קוד
}
catch (ExceptiontypeB b) {
//      קוד לטיפול במקרה של חריגה זו
}
catch (Exception e) {
//       (Default) קוד לטיפול בחריגות אחרות
}
finally {
//       קוד לניקוי השטח לפני סיום, בכל מקרה
}
throw new IllegalArgumentException("computer name error");


3. public int valOfId(String userIdentity) 
    throws IllegalArgumentException {
      //   code for valOfId
    throw new IllegalArgumentException()  …    
   }       
    public void checkSubString(String s, int low, int up)
    throws illegalArgumentException {    …    
    if (s.length() > up || low < 0 || low > up)
      throw new IllegalArgumentException
         ("Illegal arguments: low=" + low + "up  = " + up);
      else   
        //          s קוד לטיפול רגיל במחרוזת                         
    }

catch (IllegalArgumentException i) {
  String errorMessage = i.getMessage();  …
}

 4. class ComputerInterfaceException extends
       IllegalArgumentException  {
      String computerValue, reasonValue;
     
      public ComputerInterfaceException (
        String errorMessage, computer, reason) {
         super(errorMessage);
         computerValue = computer;
         reasonValue = reason;
     }
     public ComputerInterfaceException(String ErrorMessage) {
        super(errorMessage);
     } 
     public ComputerInterfaceException() {
        super();
     }
     public string computerVal() {
        return computerValue;
     }
     public string reasonVal() {
        return reasonValue;
     }

     try { ....}
     catch (ComputerInterfaceException c) {
     ....  String comId = c.computerVal();
           String reasonMess = c.reasonVal();   ....
 }

5. public class InputRecovery {
      public static void main(String args[]) {
        DataInputStream simp = new DataInputStream(System.in);
        int numb; 
        boolean ok = false;
        while (!ok) {
            try {
               System.out.print("Please input a number: ");
               numb = simp.readlnInt();
               ok=true;
               } catch (NumberFormatException nfexcep) {
                  System.err.println(nfexcep.getMessage() + 
                         " input, not an integer.");
               }  catch (IOException ioexcep) {
                  System.err.println("Fatal IO error. \n" +                                                  
                  ioexcep.getMessage() + " Exiting program.");
                  System.exit(1);
                }
            }
        }
    }

6. public class Board {
       private int int_array[];
       public Board(int size) throws IllegalArgumentException {
          if (size < 1)
             throw new IllegalArgumentException("Error: "+size);
          else int_array = new int[size];
       } ....    //   Other method definitions
   }