12.07.2015 Views

k19-k11-orientacao-a.. - Departamento de Sistemas e Computação

k19-k11-orientacao-a.. - Departamento de Sistemas e Computação

k19-k11-orientacao-a.. - Departamento de Sistemas e Computação

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

129 EXCEPTIONS1 public void <strong>de</strong>posita ( double valor ) {2 if( valor < 0) {3 IllegalArgumentException erro = new IllegalArgumentException ();4 throw erro ;5 } else {6 ...7 }8 }Código Java 14.3: Lançado uma unchecked exceptionLançando uma checked exceptionQuando i<strong>de</strong>ntificamos um erro, po<strong>de</strong>mos criar um objeto <strong>de</strong> alguma checked exception e “lançar”a referência <strong>de</strong>le com o comando throw. Contudo, antes <strong>de</strong> lançar uma checked exception, énecessário <strong>de</strong>terminar <strong>de</strong> maneira explícita através do comando throws que o método po<strong>de</strong> lançaresse tipo <strong>de</strong> erro.Observe o exemplo abaixo que utiliza a classe Exception.1 public void <strong>de</strong>posita ( double valor ) throws Exception {2 if( valor < 0) {3 Exception erro = new Exception ();4 throw erro ;5 } else {6 ...7 }8 }Código Java 14.4: Lançado uma checked exceptionCapturando exceptionsQuando queremos capturar exceptions, <strong>de</strong>vemos utilizar o comando try-cacth.1 class Teste {2 public static void main ( String [] args ) {3 Conta c = new Conta ();45 try {6 c. <strong>de</strong>posita (100) ;7 } catch ( IllegalArgumentException e) {8 System . out . println (" Houve um erro ao <strong>de</strong>positar ");9 }10 }11 }Código Java 14.5: Capturando um tipo <strong>de</strong> exceptionsPo<strong>de</strong>mos enca<strong>de</strong>ar vários blocos catch para capturar exceptions <strong>de</strong> classes diferentes.1 class Teste {2 public static void main ( String [] args ) {3 Conta c = new Conta ();45 try {www.<strong>k19</strong>.com.br 129

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!