Exception handling

Tags:    java

Hej med jer,

Jeg er ikke helt med på hvad forskellen mellem "thorw" og "throws" er i Exception Handling.

Altså indtil videre har jeg forstået det på følgende måde: Der opstår en exception når brugeren af programmet f.eks. indtaster en int i stedet for en String. Dermed vil programmet outputte en "Exception" i main tråden, og dermed vil programudførelsen afbrydes når der opstår en undtagelse/exception.

Man kan så tjekke programmet med en try/catch metode på følgende måde:


try {
.
.
........koden hvori der tjekkes for Exception
.
.
.

}
catch {
.
..................opsnapper objektet som skal fejlhåndteres, og outputter en string/ eller forklaring på hvad der skete.
.
.
}




I try blokken, vil man anvende throw for at kigge alle metoder igennem og finde fejlen, og når fejlen er fundet vil dens referance blive tildelt catch metoden som parameter?

Hvad med "throws" hvad er forskellen???

Jeg ved ikke om jeg har forstået Exception handling godt nok...håber i kan hjælpe mig :lol:
På forhånd mange tak!



Man sætter try blokken rundt om den del af koden, hvor der kan opstå en Exception. I catch blokken skriver man den kode, som skal eksekveres, når Exception opstår.

Throw bliver brugt til at til at kaste en Exception.
Fold kodeboks ind/udJava kode 

Throws bliver brugt til at vise, at Exception handling ikke foretages i methoden, men skal håndteres af kalderen af metoden
Fold kodeboks ind/udJava kode 


Fordelen er, at en metode kun kan returnere ét objekt/én simpel datatype, men den kan returnere mange forskellige Exceptions.



Indlæg senest redigeret d. 07.06.2008 17:53 af Bruger #13106
Er ikke java koder, men er da ret sikker på at du godt må lave exception handling i en metode der står throws Exception på og at throws Exception kun indikere at metoden kan kaste en exception således at du f.eks. kunne gøre dette:
Fold kodeboks ind/udKode 

hvor metode 2 fanger exceptionen fra metode 1 og laver exception handling men sender exeptionen videre blot for at
indikere højere op at der blev lavet en exeption i metoden.



1000 tak for svar!



t