Filehost.ro - gazduire fisiere
Informatica
Programare - Software - Web Design
Nou pe simpatie:
Scumpa85
Femeie
24 ani
Bucuresti
cauta Barbat
27 - 45 ani
InformaticaInregistrareLoginPozeNu sunteti logat. Lista Forumurilor Pe Tematici
Informatica / Despre limbajele de programare /

Exceptii

Pagini: 1  
#1
Admin
Administrator
Postari: 315
Pentru tratarea erorilor remediabile Java foloseste exceptiile.
Exemple de exceptii pot fi :
• ArrayIndexOutOfBoundsException
• EOFException
• FileNotFoundException
• InterruptedException, etc

Exceptiile pot fi tratate in Java in mai multe moduri :
• pot fi ignorate ;
• pot fi tratate direct in codul in care apar;
• pot fi transmise codului ce a apelat metoda care a generat exceptia, in ideea ca vor fi tratate de acesta.
De obicei se recomanda tratarea erorilor in cadrul programului.
Exceptiile sunt tratate ca obiecte.
Codul de tratare a exceptiilor se afla in pachetul java.lang, mai exact in clasa java.lang.Exception.

Exceptiile sunt tratate cu ajutorul a trei tipuri de instructiuni : try, catch si finally. Acestea sunt folosite in constructii de forma:

try {
instructiuni care pot genera o exceptie
}

catch (ExceptionType1 e) {
prelucrarea exceptiei de tipul 1
}
catch (ExceptionType2 e) {
prelucrarea exceptiei de tipul 2
}

finally {
prelucrarea tuturor celorlalte tipuri de exceptii
}

Exemplu de folosire a instructiunilor try - catch

public class ExExceptie {
public static void main (String args[]) {
int[] myArray = new int[10];
try {
System.out.println("Inainte de o atribuire valida in matrice...";
MyArray[0] = 100;
System.out.println("Inainte de o atribuire invalida in matrice...";
MyArray[100] = 100;
System.out.println("Dupa o exceptie in matrice";
}
catch (ArrayIndexOutOfBoundsException e) {
System.out.println("Eroare de indice in matrice!";
}

}
}

Exemplu de folosire a instructiunii finally
...
Instructiunea throw determina generarea unei exceptii de catre codul propriu-zis, ramanand in sarcina procedurii apelante sa trateze exceptia. Tipul exceptiei poate fi predefinit (existent in clasa java.lang.Exception) sau poate fi un tip definit special pentru o anume aplicatie. Sintaxa instructiunii este :
throw (Obiect_Exceptie)
Exemplu:
import java.net.*;
public class MyMain {
public static void main (String args[]) {
MalformedURLException e;
e = new MalformedURLException(“Adresa URL incorecta!”);
throw(e);
}

Personalizarea exceptiilor existente cat si crearea de noi exceptii se realizeaza prin extinderea clasei java.lang.Exception
Exemplu
public class MyOutOfRangeException extends Exception {
public MyOutOfRangeException () {
super();
}
public MyOutOfRangeException (String s) {
super(s);
}
}

public class VerifyRange {
MyOutOfRangeException e;
public void verifyIntRange(int value, int low,int high) throws MyOutOfRangeException {
if ((value < low) || (value > high)) {
e = new MyOutOfRangeException("number " + value + " out of range";
throw(e);
}
}
}

Obs: sectiunea throw din declaratia functiei obliga orice rutina care apeleaza metoda VerifyRange sa contina o procedura de tratare a exceptiei MyOutOfRangeException.


 
   
Pagini: 1  
Mergi la