Hem Personliga finanser Programmering Java: kasta fel - dummies

Programmering Java: kasta fel - dummies

Innehållsförteckning:

Video: Curso Java 14 - Leer y Escribir Ficheros @JoseCodFacilito 2024

Video: Curso Java 14 - Leer y Escribir Ficheros @JoseCodFacilito 2024
Anonim

Det är viktigt att din Java-kod gör allt för att lösa ett problem. Det finns emellertid tillfällen då din kod helt enkelt inte har tillräckligt med information, resurser, rättigheter eller något annat krav för att lösa ett problem.

När detta händer kasta din kod ett fel med hjälp av ett undantagsobjekt. Termen undantag är lämplig eftersom det borde vara undantaget från regeln snarare än den första akten som ansökan utför. Ändå stöter applikationer på fel som kräver exceptionella åtgärder, och följande avsnitt beskriver hur man hanterar dessa sorters situationer.

Kasta fel under exceptionella förhållanden

För övning kan du skapa en applikation som kan generera flera typer av fel. Normalt skulle du inte kasta ett fel om ett värde ligger i felaktigt område - du skulle istället visa ett meddelande direkt till användaren. Du kan dock skapa ett exempel som visar hur man kastar och tar ett fel från en metod.

Passningsfel till den som ringer

Många kodexempel du börjar med börjar precis komma till den punkt där du ringer metoder från main (). Huvudmetoden () är alltid den högsta nivån på din ansökan. När du anropar metoder bildar de metoder du ringer till ytterligare nivåer.

Till exempel kommer en metod som kallas från main () att vara på den andra nivån av din ansökan. Om den metoden skulle kalla en annan metod, skulle den här metoden vara på tredje nivå osv. De flesta applikationer består av många samtalsnivåer.

När du ser ett undantag på skärmen, visar det faktiskt en lista över de metoder som kallade den aktuella metoden i ett format som heter call stacken.

Samtalstapeln är en lista över metoder och den ordning i vilken de kallas med andra metoder. Att känna till samtalstapeln kan hjälpa dig att hitta källan till ett potentiellt fel när det inte händer på den aktuella nivån av programmet.

Hanteringsfel är en viktig del av god programmeringspraxis. Om du vill ha robusta applikationer som inte ständigt kraschar, måste du tillhandahålla bra felhantering. Att försöka hantera ett fel när du inte har tillräckligt med information för att hantera det här felet är dock ett problem.

När din kod försöker fixa ett fel på en för låg nivå, döljer det felet från en nivå som eventuellt kan fixa det. Ja, du vill fixa ett fel på lägsta möjliga nivå, men inte på bekostnad av att tillhandahålla en reparation som faktiskt skulle kunna dölja något mer allvarligt.

När du upptäcker att en viss nivå av en applikation inte har nödvändiga resurser, information, behörigheter, användaråtkomst eller något annat objekt som behövs för att hantera ett fel, utfärdar du ett kasta uttalande med lämpligt undantag objekt.Den tidigare nivån av ansökan kommer att få undantaget och avgöra om det kan hantera det.

Men om huvudmetoden () får undantaget, måste du bestämma vad du ska göra med felet, eller programmet kommer att krascha. Det anses allmänt dåligt för programmering att helt enkelt låta applikationen krascha - du måste komma på något sätt för att hantera fel som applikationen möter.

Obligatorisk felhantering

Java innehåller två typer av undantag: kontrolleras (de som övervakas av JRE) och avmarkerade (de som inte övervakas av JRE). Du har möjlighet att hantera ett okontrollerat undantag. Java tvingar dig dock att hantera ett kontrollerat undantag. Din kod kommer inte ens att kompileras om du försöker använda en metod som har ett kontrollerat undantag förknippat med det.

Ett kontrollerat undantag är ett som JRE berättas av klassdefinitionen att övervaka. JRE tvingar klassens användare att ge hantering för undantaget för att säkerställa att klassen fungerar på ett tillförlitligt sätt.

Alla typer av udda detaljer är förknippade med markerade och obekanta undantag. Ett enkelt sätt att veta om ett undantag är kollat ​​är att veta förälderklassen. Alla undantag som är underklassade från klasserna Error eller RuntimeException är avmarkerade - alla andra undantag är markerade.

Den bästa praxisen är att hantera alla undantag i din ansökan, och du behöver inte oroa dig för om ett undantag är markerat eller avmarkerat. En bra utvecklare hanterar alltid potentiella fel - det är bottenlinjen.

Programmering Java: kasta fel - dummies

Redaktörens val

Hur man redigerar bilder i Redigera snabbläge för Photoshop Elements 9 - dummies

Hur man redigerar bilder i Redigera snabbläge för Photoshop Elements 9 - dummies

I Photoshop Element, Redigera Snabbt läge är en uppskattad version av Redigera fullt läge som ger grundläggande fixverktyg tillsammans med några unika funktioner, till exempel en förhandsgranskning av bilden. Här är ett steg för steg arbetsflöde som du kan följa i Redigera snabbläge för att reparera dina foton: Välj ett eller flera foton i ...

Hur man redigerar i Photoshop Elements 10: s Snabb Fotoredigeringsläge - dummies

Hur man redigerar i Photoshop Elements 10: s Snabb Fotoredigeringsläge - dummies

Snabb Fotoredigering är en uppskattad version av Full Photo Edit-läge som bekvämt ger grundläggande fixeringsverktyg och kastar i några unika egenskaper, till exempel en förhandsgranskning av bilden. Här är ett steg för steg arbetsflöde som du kan följa i Quick Photo Edit-läget för att reparera dina foton:

Hur man förbättrar Photoshop Elements-bilder med Photo Effects - dummies

Hur man förbättrar Photoshop Elements-bilder med Photo Effects - dummies

Fotoeffekter i Photoshop Elements 11 fungerar som applicera filter; medan dialogrutan Filtreringsgalleri ger dig många alternativ för att tillämpa ett filter, ger den guidade panelen dig filtereffekter och tar dig genom steg för att justera ljusstyrka, ändra färgton och mättnad och göra andra justeringar för att perfekta resultatet. Du ...

Redaktörens val

Hur man tar bort bilder från din Canon EOS 7D Mark II - dummies

Hur man tar bort bilder från din Canon EOS 7D Mark II - dummies

När du granskar en bild, bestämmer du om det är en målvakt. Om du tittar på en bild på din Canon EOS 7D Mark II, gillar du inte bilden av någon anledning kan du radera det. Men borttagning av bilder måste ske med stor försiktighet eftersom uppgiften inte kan ångras. När du har raderat en ...

Hur man redigerar filmer på en Canon EOS 60D - dummies

Hur man redigerar filmer på en Canon EOS 60D - dummies

60D Edit-funktionen gör det härligt enkelt för att ta bort oönskade delar från början eller slutet av en film direkt på din kamera. Denna ombordredigering är praktisk men grundläggande, så förvänta dig inte mirakel. Här är de enkla stegen för att trimma början eller slutet på en film: Klicka på ikonen Redigera (det ser ut ...

Redaktörens val

Hur man arbetar med text i ett Word 2010-tabell - dummies

Hur man arbetar med text i ett Word 2010-tabell - dummies

Text hinner i ett bord i Word 2010 på en cell-vid-cell basis. Varje cell i ett Word-bord kan ha ett eget styckeformat och en egen uppsättning flikar. Grupper av celler, rader och kolumner och hela tabellen kan väljas och formateras samtidigt, om du vill. All standardtext ...

Hur man arbetar med Word 2010: s decimala flik - dummies

Hur man arbetar med Word 2010: s decimala flik - dummies

Du kan använda decimalfliken i Word 2010 till rad upp kolumner av siffror. Även om du kan använda en rätt flik för att göra detta jobb är decimalfliken ett bättre val. I stället för högerjusterad text, som den högra fliken gör, justerar decimalfliken siffror efter deras decimaldel - perioden i ...

Hur man arbetar med flera Word 2010-dokument på samma gång - dummies

Hur man arbetar med flera Word 2010-dokument på samma gång - dummies

O saker Word 2010 kan göra med dokument! Du kan öppna flera Word-dokument samtidigt och arbeta på mycket av dem, växla mellan de olika öppna dokumenten. Öppnar flera Word-dokument samtidigt Det är inte en fråga om hur Word kan fungera på mer än ett dokument åt gången. Nej, ...