Door de gebruiker gedefinieerde uitzonderingen toestaan dat de programmeur om fouten in de applicatie met aangepaste reacties te behandelen . Het creëren van deze functies maakt een toepassing gemakkelijker te begrijpen en gebruiksvriendelijk. Foutafhandeling is een onderdeel van de programmering die normaal wordt vergeten , maar het geeft gebruikers een beter begrip van wat er mis is met de toepassing en elimineert veel van de frustraties uit arme foutreacties . Instructies 1 Maak shell van de functie . Een door de gebruiker gedefinieerde uitzondering is een uitbreiding van de interne uitzondering klasse . In dit voorbeeld wordt de uitzondering ingesteld om een slecht nummer in de toepassing te testen . De volgende code stelt de class.public klasse BadNumber breidt Exception { } kopen van 2 Stel de constructeur . De constructor is een variabele die wordt gebruikt om de gebruiker dat het nummer correct vertellen . Openbare BadNumber ( int myNumber ) , dit kan elke variabele in uw toepassing die de exception.private int myNumber veroorzaakt worden { this.myNumber = myNumber ; } 3 Maak de functie die retourneert de fout van de gebruiker . Bruikbaarheid in toepassingen bevat duidelijke antwoorden als er een fout . Deze code stelt de reactie op de gebruiker om hem te laten weten dat het nummer klopt niet. Dit wordt toegevoegd aan de klasse uitzondering in de stappen 1 en 2.public String toString ( ) { return " Aantal kan niet negatief zijn " + " " + myNumber ; } Test 4 uitzondering klasse . Wanneer er een fout optreedt , de belangrijkste code nodig heeft om een uitzondering te gooien . In dit voorbeeld , wanneer de gebruiker een negatief nummer wordt ingevoerd , wordt de " BadNumber 'uitzondering functie aangeroepen . Deze code stelt de test class.public klasse TestException { } 5 Maak de code om een uitzondering te gooien . Dit voorbeeld roept een functie die een negatief getal dat later noemt de " BadNumber " exception.public static void main ( String [ ] args ) gooit Uitzondering keert { int myNumber = getNumber ( ) if ( myNumber < 0 ) { throw new NegativeAgeException ( myNumber ) ; } else { System.out.println ( " nummer is " + myNumber ) ; } } static int getNumber ( ) { return -9 ; }
|