15 Temmuz 2012 Pazar

Ders1.Exception(Istisnalar)

Exception.

Run zamanı ortaya cıxan xətaları düzgün bir şəkildə istifadəçiyə göstərir
Ümümi sxemi :
Try { 

kod 
} catch ( Exception e ) { System.out.println ( " Xeta var " ) }

1)Nümunə:
package az;
public class Istisna{
public static void main(String args[]){
int a=8, b=0;
int c= a / b;

System.out.println(c);
     }
}
// bilindiyi kimi mexrecde sifir olduğundan bu kod sehv verecek.

Run zamanı cıxan nəticə:

Exception in thread "main" java.lang.ArithmeticException: / by zero

at ilkisim.test.main(test.java:14)

Java Result: 1

__________________________________________________________________
Gəlin bu xətanı görsəl baxımdan düzəldək:
package az;


public class Istisna{
public static void main(String args[]){

try{
int a=8, b=0;
int c= a / b;

System.out.println(c);

}catch(ArithmeticException e){


System.out.println("Xeta var: Məxrəc sıfır olmaz ! ");
}

  }
Run zamanı cıxan nəticə:
Xəta var : Məxrəc sıfır olmaz !


________________________________________________
Gəlin daha bir nümunə göstərək.
2)Nümunə:

package az;


public class Istisna{
public static void main (String args[]) {


String names[] = new String[3];
names[0]="ZAHIR";
names[1]="MEHMAN";
names[2]="ISMAYIL";


System.out.println(names[3]);
}
}
// Göründüyü kimi 3-çü ad olmadıqından xəta verir.
Run zamanı cıxan nəticə:



Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException:3
at ilkisim.names1.main(names1.java:33)
Java Result: 1

__________________________________________________
Xətanı görsəl baxımdan düzəldək:

package az;


public class Istisna{
public static void main (String args[]) {


String names[] = new String[3];
try{
names[0]="ZAHIR";
names[1]="MEHMAN";
names[2]="ISMAYIL";


System.out.println(names[3]);
}catch(ArrayIndexOutOfBoundsException e){
System.out.println("Xəta var: 3-çü ad yoxdur");
}
}

}
Run zamanı cıxan nəticə:
Xəta var:3-çü ad yoxdu