? Exceções podem fazer com que programas Java para funcionar, mas quando usado corretamente, eles também permitem que os programadores a criar aplicações que podem lidar com eventos inesperados. Número exceções ocorrem frequentemente quando programas tentam analisar os números , a conversão de cadeias de texto em valores numéricos. Se um programa Java utiliza um método em que um número não é do tipo esperado , ele pode jogar uma Exception Number Format . Ao entender as exceções , você pode aprender a criar programas que oferecem funcionalidade confiável. Tipos de exceção
programas Java pode jogar muitos tipos diferentes de exceção. A exceção Number Format é a exceção numérico mais comum . A exceção de tempo de execução , que estende a classe Exception Argumento ilegal . Normalmente surge essa exceção quando você usa um método para tentar analisar uma seqüência como um número, mas o conteúdo da string não é um número do tipo correto . Por se tratar de uma exceção não verificada , seus programas podem compilar sem o seu Ambiente de Desenvolvimento Integrado avisando sobre o possível erro. A exceção Number Formato só ocorre se um programa passa de entrada inadequada para um método, de modo que você só pode descobri-lo quando seu aplicativo é executado .
Causas
O wrapper linguagem Java classes fornecem representações de objetos dos tipos de número primitivos , incluindo integer, float e double . Usando essas classes , os programas podem analisar valores de string como tipos numéricos , como segue:
Integer.parseInt ( "3" );
Este código é executado sem erro, porque o parâmetro string passada contém um valor numérico. No entanto, a seguinte chamada de método faz com que Java para jogar uma Exception Number Formato porque a seqüência não contém um número:
Integer.parseInt ( "r" );
O código a seguir também provoca a exceção, porque embora a string é um número , não é um número inteiro :
Integer.parseInt ( " 3.5" );
Todos esses trechos de código compilar e executar , de forma o programador só pode tornar-se consciente do erro em tempo de execução . Os valores não são normalmente fornecidos explicitamente, mas são lidas a partir de uma fonte externa ou valor da variável.
Catching
Você pode pegar Número Exceções formato se seus programas são susceptíveis de jogá-los . Ao adicionar seu código de análise número para um bloco try , então fornecer um prendedor preto depois dele, você pode criar programas que continuarão a funcionar mesmo se uma exceção Number Formato surge. O seguinte código de exemplo demonstra essa estrutura:
try { Integer.parseInt ( numString );} catch ( NumberFormatException numExc ) { System.out.println ( numExc.getMessage ()); }
a seqüência de análise , neste caso, é representado como uma referência variável , de modo que o seu conteúdo é desconhecido. Se o conteúdo da string não pode ser analisado como um número inteiro , o código imediatamente salta para o bloco catch , onde você pode fornecer processamento alternativo.
Jogando
Além de captura exceções, os desenvolvedores podem criar programas em Java na qual eles lançam exceções personalizadas. Esta é uma tática comum com exceções não verificadas , como Number Format . O código a seguir demonstra alterada :
catch ( NumberFormatException numExc ) { throw new BadNumberException (); }
Isso permite que os programadores para definir sua própria classe de exceção personalizada, que pode ser um tipo marcado, e para fornecer uma estratégia de enfrentamento adequado para a aplicação.