Curso de Verão de Java



Threads e Exceções - Exercício de Fixação 8

Dada a classe:
class meuApplet extends java.applet.Applet {
	...

	public void init() {
		...
	}

	public void start() {
		...
	}

	public void stop() {
		...
	}

	public void paint() {
		...
	}

	...
} 
O que você deve fazer para implementá-la como um thread?

Analise o programa abaixo:

import java.io.*;
import java.lang.*;


class TesteExcecao 
{

  public static void main (String args[])
  {

// Atribui à variavel 'a' o valor inteiro 
// correspondente à primeira string passada 
// como parametro na chamada ao programa 

	int a = Integer.parseInt(args[0]), aux; 

	aux = 10 / a;
	System.out.println(aux+"\n");
 
  }
}

O que aconteceria se depois de compilarmos este programa nós executássemos as seguintes linhas:

a) java TesteExcecao 2 e
b) java TesteExcecao 0 ??

OBS-> Se executássemos a linha java TesteExcecao x o programa abortaria devido a uma exceção que seria levantada - NumberFormatException - e não seria capturada.

Baseado no que você aprendeu hoje sobre exceções e na observação acima responda às seguintes questões:

c) Pra que serve a estrutura finally?
d) Pra que servem as exceções em Java e quais seus benefícios?


Breno Gustavo Soares da Costa, bgsc@di.ufpe.br
Andreia Alcântara, aaa@di.ufpe.br
Última edição em 22 de janeiro de 1996.
URL: http://www.di.ufpe.br/~java/verao/aula8/exercicio.html