Kako stvoriti prilagođenu iznimku u Javi

Kako stvoriti prilagođenu iznimku u Javi
Izuzeci su ključni alat koji pomaže Java programima u suočavanju s neočekivanim. Kao programer, u mnogim slučajevima možete koristiti standardne vrste iznimki koje pruža jezik, ali za neke aplikacije stvaranje vlastitih klasa iznimki je učinkovitije. Da biste stvorili vlastite iznimke u Javi, morate super proširiti iznimku. Ako ste tek počeli s nasljeđivanjem Java, stvaranje prilagođene klase izuzetaka također će pokazati osnovne uključene koncepte. Vaše vlastite prilagođene klase izuzetaka bit će potklase jedne od vlastitih Java iznimnih klasa. Upute
1

Izradite svoju deklaraciju klase iznimke. Upotrebom sljedećeg dijagrama za stvaranje nove klase u vašem Java projektu:

Klasa MySpecialException proširuje iznimku {

// konstruktor metode

Javna MySpecialException (poruka niza)

{super (poruka); } “. proširuje iznimku ”

}

Ova osnovna klasa definirana je kao podklasa glavne Java iznimne klase korištenjem sintakse. U konstruktoru nasljedne klase naziva se konstruktor nadklase, kao u ovom primjeru. U ovom trenutku klasa ne radi ništa osim normalne klase iznimki, ali se može navesti specifično ponašanje.
2

Izuzetak stavite u svoju prijavu. U glavnu klasu svog projekta uključite novu metodu za testiranje vaše klase iznimke na sljedeći način:

public static int tryException (int someNumber) baca MySpecialException {

if (someNumber <0) izbaci novu MySpecialException (“ispod nule”);

else vrati someNumber;

}

Kad god uključite metodu koja bi mogla uzrokovati izbacivanje vaše iznimke, morate uključiti klauzulu “throws”, kao u primjeru. Prilagođena klasa izuzetaka instancira se kao i svaki drugi objekt, koristeći ključnu riječ “new”. U ovom trivijalnom primjeru program provjerava je li određena prenesena vrijednost manja od nule i baca iznimku ako jest.
3

Pozovite metodu da biste testirali svoju iznimku. U glavnu metodu projekta dodajte sljedeći testni kôd:

int TestValue = -1;

pokušajte {

tryException (TestValue);

} Slike

catch (MySpecialException MSE) {

System.err.println (mse.getMessage ());

TestValue = 0;

} <br>

Ovaj kôd stvara situaciju u kojoj će se izuzetak pojaviti, pružajući vrijednost ispod nule. Kad se pozove metoda ispitivanja, ona će izvršiti test, provjeriti je li broj manji od nule i izbaciti iznimku. Budući da je poziv metode uključen u blok “try”, blok “catch” bit će sljedeći komad koda koji će se izvršiti, dopuštajući kodu da se nosi s pogreškom i promijeni problematičnu vrijednost. Sastavite i pokrenite svoj program, a zatim promijenite varijablu “TestValue” na broj veći od nule i ponovno je pokrenite da vidite razliku.
4

Dodajte dodatni tretman za svoju klasu izuzetaka. Svrha definiranja vlastitih razreda iznimki je omogućiti vam da njihovo ponašanje prilagodite potrebama svojih programa. Možete dodati sve potrebne funkcije unutar klase MySpecialException na sljedeći način:

Javna MySpecialException (poruka niza) {

Odlično (poruka);

System.err.printlin (“MySpecialException je bačena!”); }

}

Ona samo pokazuje kako dodati klasi iznimki, ali trebate dodati bilo koju obradu koja odgovara vašim potrebama.
5

Pažljivo testirajte svoj program. Kad god se pokušate nositi s nepredviđenim događajima, neophodan je dobar stupanj kontrole. Prednost korištenja vlastitih klasa izuzetaka je ta što vam daju veću razinu kontrole nad onim što se događa kada se vaš program izvodi. Međutim, spoznaja da se vaš program može ponašati neočekivano znači da je također potreban učinkovit pristup testiranju.