Hvilke konstruktører bør et egendefinert unntak typisk tilby, og hvorfor er konstruktøren som tar en `Throwable cause` viktig?
Klikk for å snu kortet
Et egendefinert unntak bør typisk tilby: en parameterløs konstruktør, en `(String message)`-konstruktør, en `(String message, Throwable cause)`-konstruktør og en `(Throwable cause)`-konstruktør. Disse delegerer til superkonstruktørene i `Exception`. Konstruktøren som tar en `cause` er viktig for exception chaining: den bevarer det opprinnelige unntaket slik at man ikke mister informasjon når man pakker et lavnivå-unntak inn i et mer domenespesifikt unntak. Årsaken hentes senere med `getCause()`.
Space / Enter for å snu