Ae galera,
É o seguinte…
Criei os seguintes metodos publicos dentro do meu programa:
private static InputStreamReader dados = new InputStreamReader(System.in);
private static BufferedReader teclado = new BufferedReader(dados);
private static String entrada = new String ("");
Dentro do metodo main, eu utilizo estes metodos chamando:
entrada = teclado.readLine();
Mas quando eu criei um outro metodo utilizando:
public static void metodo() {
e dentro dele chamando a mesma linha ocorre o seguinte erro:
unreported exception java.io.IOException; must be caught or declared to be thrown
entrada = teclado.readLine();
^
O que eu faço para conseguir utilizar o teclado.readLine a partir deste outro metodo?
cv1
#2
Traduzindo: a exceção java.io.IOException não foi declarada; ela deve ser pega ou lançada
Resumindo:
public static void metodo() throws IOException {
...
}
ou
public static void metodo() {
...
try{
entrada = teclado.readLine();
} catch(IOException e) {
...
}
}
Só um comentário.
Quase sempre não é interessante fazer
String variavel = new String("texto");
Strings em JAVA são imutáveis e com isto, a cada alteração uma nova é criada.
Quando usamos a implementação acima, é sempre criado um objeto novo em memória independentemente da string já ter sido utilizada ou não.
Se fizermos assim:
String variavel = "texto";
Será verificado em um Pool de Strings se esta existe e assim não será criado uma nova.
Bem, em aplicações pequenas isso não influe muito. A medida que o negócio cresce é que o bicho aparece… hehe…
bem, só uma questão de performance.
falow! 