Anda di halaman 1dari 38

LINGUAGEM JAVA

Exemplo de uma classe em Java: Exemp01


class Exemp01
{
public static void main (String args[])
{
System.out.println(Primeiro Programa Java);
System.out.println(Uma classe que envia dados a tela); System.out.println(Uma classe que envia dados a tela);
}
}
Todo programa Java inicia-se com a palavra class seguida pelo nome da
classe (no caso Exemp01).
Como conveno, definida pela Sun, nome de classe inicia-se com uma
letra maiscula
Java case sensitive, ou seja, sensvel a letra maiscula e minscula
LINGUAGEM JAVA
Um par de chaves { ... } envolve todo o cdigo da classe
Classe composta por mtodos (considerados funes ou procedures
em outras linguagens) que podem conter outros mtodos ou outras
estruturas de programa
Toda classe executvel dever possuir o mtodo main (principal). No
exemplo, o mtodo main contm 2 instrues para sada em tela. Na exemplo, o mtodo main contm 2 instrues para sada em tela. Na
realidade, no uma instruo e sim uma classe especializada em sada
de dados.
A linha do mtodo principal possui o formato: public static void
main(String args[]). Praticamente todas as aplicaes possuem esta
linha. O que se pode alterar a varivel args que poder receber outro
nome conforme o desejo do programador.
LINGUAGEM JAVA
public um qualificador do mtodo (no apenas no main). Indica
que acessvel externamente a esta classe (outras classes podem
utilizar esse mtodo)
static um outro qualificador. Indica que o mtodo deve ser
compartilhado por todos os objetos que so criados a partir desta classe
void o valor de retorno do mtodo. Void significa que no retorna void o valor de retorno do mtodo. Void significa que no retorna
nenhum valor. Quando um mtodo retorna um resultado, esse
qualificador no ser void.
main o nome do mtodo que indica ao compilador o incio do
programa. o mtodo principal.
(String args[]) o argumento do mtodo principal (main) e por
consequncia do programa todo. Ele um vetor de strings formado por
todos os argumentos passados ao programa na linha de comando do
sistema operacional quando o programa invocado.
LINGUAGEM JAVA
Procedimentos para compilao e execuo tendo um JDK instalado:
Digitar o programa utilizando um editor de texto qualquer e salvar com
a extenso .java, por exemplo: Exemp01.java
Na linha de comando do DOS, chamar o compilador digitando:
javac Exemp01.java javac Exemp01.java
Se no ocorrer nenhum erro, o compilador criar um arquivo com
extenso .class, por exemplo: Exemp01.class
Chamar o interpretador Java digitando, na linha de comando do DOS:
java Exemp01 (a extenso .class dever ser omitida)
Aps a execuo, as duas mensagens so impressas na tela:
Primeiro Programa Java
Uma classe que envia dados a tela
LINGUAGEM JAVA
Exerccios de fixao
A empresa criadora da linguagem Java foi a .................
O comando ................ possibilita realizar a execuo de uma aplicao
em Java.
O comando javac possibilita realizar a .................... de classes escritas
em Java. em Java.
Aps a realizao do processo de compilao, gerado um arquivo
com extenso ..........
A instruo em Java utilizada para definir o nome da classe ..........
Um dos principais motivos que contriburam para o desenvolvimento
da linguagem Java foi ................
Por qu o aspecto da utilizao do Java em multiplataforma muito
importante para os programadores?
Um mtodo equivale a .................
TIPOS DE DADOS
Uma varivel dever ser definida, antes do seu uso,
contendo informaes sobre que tipo de dado ela ir
armazenar
Os tipos de dados, em Java, so portveis entre todas as
plataformas de computadores que suportam a linguagem
Java
Na maioria das linguagens, quando um tipo de dado (por Na maioria das linguagens, quando um tipo de dado (por
ex. inteiro) utilizado, pode ser que o nmero seja
armazenado em 16 ou 32 bits dependendo da plataforma.
Em Java isso no ocorre, um tipo de dado ter sempre a
mesma dimenso, permitindo assim, a portabilidade e a
despreocupao de plataforma em que o programa ser
executado, por parte dos programadores.
TIPOS DE DADOS primitivos
Tipo Qtd Bits Valores
char 16 \u0000 a \uFFFF
byte 8 -128 a +127
int 32 -2.147.483.648 a -2.147.483.647
short 16 -32.768 a +32.767 short 16 -32.768 a +32.767
long 64 -9.223.372.036.854.775.808 a
+9.223.372.036.854.775.807
float 32 -3.40292347E+38 a +3.40292347E+38
double 64 -1.79769313486231570E+308 a
+1.79769313486231570E+308
boolean 8 true ou false
DEFINIO DE VARIVEIS
Varivel um nome escolhido pelo programador que associado a
um valor pertencente a um certo tipo de dados
Varivel uma localizao de memria (um endereo) capaz de
armazenar um valor de um certo tipo para o qual se d um nome
Toda varivel possui um nome, um tipo e um contedo. No podem
utilizar as palavras reservadas da linguagem Java para o seu nome
As variveis podem ser declaradas no incio, no meio ou no final de As variveis podem ser declaradas no incio, no meio ou no final de
um programa; no entanto, sempre antes do seu uso
A linguagem Java atribui valores-padro (default) para as variveis.
Valor 0 (zero) para as variveis do tipo char, byte, short, int, long,
float e double, e false para boolean
Mesmo com a linguagem possuindo valores padro, dependendo do
ponto do programa em que a varivel utilizada, torna-se obrigatria
sua inicializao com algum valor
Exemp0201 Exemplo de Definio de Variveis
public class Exemp0201
{
public static void main (String args[])
{
int x=10, y=20;
double valor = 250.37;
System.out.println(x);
System.out.println(y);
System.out.println(valor);
}
}
Exemp0201 Exemplo de Definio de Variveis
As variveis do mesmo tipo podem ser declaradas na mesma linha
separadas por uma vrgula
Uma declarao terminada por ; (ponto-e-vrgula) nem sempre !!!
Duas barras ( // ), em qualquer local do programa, tudo que estiver
escrito depois deste sinal e na mesma linha ser considerado um escrito depois deste sinal e na mesma linha ser considerado um
comentrio
Para inserir comentrios que envolvam vrias linhas, utiliza-se /*
(barra asterisco) para demarcar o incio e */ (asterisco barra) para o
final
OPERADORES
Aritmticos, Lgicos e Relacionais
Operadores Aritmticos:
Funo Sinal Exemplo
Adio + X + Y
Subtrao - X - Y
Multiplicao * X * Y Multiplicao * X * Y
Diviso / X / Y
Resto da diviso inteira % X % Y
Sinal negativo - - X
Sinal positivo + + X
Incremento unitrio ++ ++ X ou X ++
Decremento unitrio -- -- X ou X --
OPERADORES
Aritmticos, Lgicos e Relacionais
Operadores Aritmticos: Exemplo Exemp0202
Em java, para imprimir vrias variveis na tela, uma ao lado da outra, utiliza-se o
operador de concatenao mais (+), ao contrrio de outras linguagens que utilizam a
vrgula (,) como separador
Class Exemp0202
{
public static void main (String args[])
{
// declaraco e inicializao de variveis // declaraco e inicializao de variveis
int x = 10; int y = 3;
// vrias operaes com as variveis
System.out.println(X = + x);
System.out.println(Y = + y);
System.out.println(-X = + (- x));
System.out.println(X/Y = + (x/y));
System.out.println(Resto de X por Y = + ( x%y));
System.out.println(Inteiro de X por Y = + (int)( x/y));
System.out.println(X + 1 = + (++ x));
}
}
OPERADORES
Aritmticos, Lgicos e Relacionais
Operadores Aritmticos: Exemplo Exemp0202
No exemplo anterior, o mtodo println da classe System
provoca a mudana de linha na tela ao imprimir o dado
colocado entre parnteses.Caso necessite imprimir diversos
valores na mesma linha, alm de utilizar o operador de valores na mesma linha, alm de utilizar o operador de
concatenao, poder utilizar o comando println sem o ln.
Exemplo: System.out.print(Dados sem quebra de linha);
OPERADORES
Aritmticos, Lgicos e Relacionais
Operadores Relacionais
Funo Caractere(s)
utilizado(s)
Exemplo
Igual = = X = = Y
Diferente != X != Y
Maior que > X > Y
Maior ou igual a >= X >= Y
Menor que < X < Y
Menor ou igual a <= X <= Y
OPERADORES
Aritmticos, Lgicos e Relacionais
Operadores Lgicos
Funo Caractere
utilizado
Exemplo
E lgico ou AND && X && Y
OU lgico ou OR | | X | | Y
Negao ou NOT ! !X
PASSAGEM DE PARMETROS
Uma aplicao Java pode receber valores a partir da linha de comando do
DOS, no momento em que ela executada. Quando o parmetro recebido
por um programa, ele pode ser manipulado internamente e usado em um
procedimento qualquer. Exemplo:
class Exemp0204
{{
public static void main (String args[])
{
System.out.println(args[0]); // imprime o 1 argumento
System.out.println(args[1]); // imprime o 2 argumento
}
}
Ao executar, o usurio deve colocar o comando no seguinte formato:
java Exemp0204 argumento1 argumento2
PASSAGEM DE PARMETROS
Comentrios sobre os argumentos:
A varivel args um vetor de String (na realidade String no uma simples
varivel e sim um objeto que ser estudado mais adiante)
O vetor de String possui o primeiro elemento do vetor com ndice 0 (zero).
Assim, cada palavra digitada na linha de comando, separada por um espao,
ser armazenada em um ndice do vetor args (args[0] armazena o primeiro
argumento, args[1] o segundo e assim sucessivamente)
Os argumentos passados na linha de comando sempre se referem a variveis Os argumentos passados na linha de comando sempre se referem a variveis
do tipo String devido sintaxe utilizada no mtodo principal (main), ou seja,
args um vetor de tipos String. Assim, mesmo que sejam passados nmeros
como parmetros, eles sero considerados como caracteres.
Exemplo: java Exemp0204 20 25
Resultado: 20
25
Exemplo simples, no entanto, ele trata de uma importante caracterstica da
linguagem Java: a passagem de parmetros entre mtodos
CONVERSO DE TIPOS
O exemplo anterior (passagem de parmetros) mostrou que todos os dados
recebidos como argumentos em uma aplicao referem-se a valores do tipo
String.
Essa caracterstica gera um inconveniente no caso de ser necessria a
utilizao de valores de outros tipo. utilizao de valores de outros tipo.
Em diversos tipos de programa em Java, necessita-se realizar a converso
entre os diversos tipos primitivos existentes.
A linguagem Java possui uma srie de classes que realizam essa tarefa
A tabela a seguir apresenta algumas das principais formas de converso de
tipos
As principais palavras usadas na converso aparecem em negrito.
TABELA DE CONVERSO DE TIPOS
Supondo a varivel x Converter em A varivel y recebe o valor convertido
int x = 30 float float y = x
int x = 30 double double y = x
float x = 20.5 int int y = (int) x
String x = 20 int int y = Integer.parseInt(x) String x = 20 int int y = Integer.parseInt(x)
String x = 40.84 float float y = Float.parseFloat(x)
String x = 40.84 double double y = Double.parseDouble(x)
String x = Java Vetor de bytes byte b[] = x.getBytes()
int x = 30 String String y = String.valueOf(x)
float x = 20.45 String String y = String.valueOf(x)
double x = 452.43 String String y = String.valueOf(x)
byte x[] - (x um
vetor de bytes)
String Strint y = newString(x)
CONVERSO DE TIPOS: Exemplo
Criar uma classe que recebe 3 valores da linha de comando do DOS (nota1, nota2 e
trabalho) e calcula a mdia entre as notas, utilizando para isso o conversor de tipo String
para double.
O usurio deve fornecer 3 notas da seguinte maneira:
java Exemp0205 9.5 10.0 7.5
class Exemp0205
{
public static void main (String args[]) public static void main (String args[])
{
double nota1, nota2, trabalho, media; // declarao das variveis
nota1 = Double.parseDouble(args[0]); // converso string para double
nota2 = Double.parseDouble(args[1]); // converso string para double
trabalho = Double.parseDouble(args[2]); // converso string para double
media = (nota1+nota2+trabalho) / 3; // clculo da mdia
Sustem.out.println(Media = + media); // imprime a mdia
}
}
Entrada de dados via teclado
Para entrar com dados via teclado:
import java.io.*;
class Exemp0206
{
public static void main (String args[])
{
String s = ; String s = ;
float nota1=0, nota2=0, trabalho=0, media=0;
DataInputStream dado;
try
{
System.out.println(Entre com a nota1);
dado = new DataInputStream(System.in);
s=dado.readLine();
nota1=Float.parseFloat(s);
System.out.println(Entre com a nota2);
dado = new DataInputStream(System.in);
s=dado.readLine();
nota2=Float.parseFloat(s);
System.out.println(Entre com a nota do trabalho);
dado = new DataInputStream(System.in);
s=dado.readLine();
trabalho=Float.parseFloat(s);
media=(nota1+nota2+trabalho) / 3;
System.out.println(Media: + media); System.out.println(Media: + media);
}
catch (IOException e)
{
System.out.println(Houve erro na entrada de dados);
}
catch (NumberFormatException e)
{
System.out.println(Houve erro na converso, digite apenas caracteres numericos);
}
}
}
INTERPRETAO DO EXEMP0206
Import uma diretiva de compilao; indica que um determinado pacote de classes
deve ser carregado no momento da compilao. Isto necessrio quando uma classe
precisa utilizar recursos j definidos em outras classes.
No exemplo, o pacote java.io que contm classes especializadas em entrada e sada de
dados est sendo chamado. Classe DataInputStream pertence ao pacote java.io. O
pacote pode ser entendido como um grupo de classes do mesmo tipo armazenadas em
uma pasta.
O asterisco presente em import java.io.* indica que devem ser carregadas todas as
classes presentes no pacote java.io. Poderia ser declarado da seguinte forma: import classes presentes no pacote java.io. Poderia ser declarado da seguinte forma: import
java.ioDataInputStream, indicando que ser utilizada apenas a classe
DataInputStream.
A linguagem Java possui um pacote de classe padro java.lang que sempre carregado
automaticamente. Para utilizar a classe System (System.out.println), essa diretiva
necessria.
A utilizao do * no gera overhead (sobrecarga). Asterisco (*) deve ser usado apenas
para identificar um grupo de classes e no um grupo de pacotes.Exemplo: java.util.*,
java.net.* (indicam, todas as classes do pacote util e do pacote net). No possvel
utilizar java.* achando que dois pacotes (util e net) sero incorporados.
INTERPRETAO DO EXEMP0206
DataInputStream dado declara um objeto chamado dado a partir da classe
DataInputStream. uma classe que possibilita a entrada de dados via teclado.
Bloco try (tente) constitui-se num trecho de cdigos delimitado por abre e fecha-chaves.
O bloco try sempre atua em conjunto com um ou vrios bloco catch.
O bloco try analisado pelo interpretador Java e se algum erro ocorrer, a execuo do
programa ser desviada para um dos blocos catch, dependendo do erro gerado na
aplicao.
No programa exemplo, dois tipos de erros esto previstos: Erro de entrada de dados pelo
teclado ( IOException ) e um erro na converso de String para float
( NumberFormatException ). ( NumberFormatException ).
O dado digitado pelo usurio recebido por meio de new DataInputStream
(System.in) e armazenado no objeto denominado dado. Ocorrendo algum erro
durante a digitao, o erro possvel porque manipula troca de dados entre um
perifrico (teclado) e a memria, a execuo ser desviada para o bloco catch
(IOException e).
O contudo do objeto dado, ou seja, o dado digitado pelo usurio, colocado na
varivel s atravs do comando de atribuio s = dado.readLine().
O contedo da varivel s convertido em uma varivel numrica do tipo float por meio
de uma forma de converso de tipos Float.parseFloat. Ocorrendo algum erro durante a
converso, caso o usurio tenha digitado um contedo diferente de nmero, a execuo
ser desviada para o bloco catch (NumberFormatException e).
EXERCCIO DE FIXAO
1-)Crie um programa que receba trs nomes quaisquer por meio da linha de
execuo do programa, e os imprima na tela da seguinte maneira: o primeiro e
o ltimo nomes sero impressos na primeira linha um aps o outro, o outro
nome (o segundo) ser impresso na segunda linha, conforme o resultado
apresentado abaixo:
java Ex0206a Joo Ana Pedro
Joo Pedro
Ana Ana
2-)Faa um programa que receba a quantidade e o valor de trs produtos, no
seguinte formato: Quantidade1 Valor1 Quantidade2 Valor2 Quantidade3
Valor3. O programa deve calcular esses valores seguindo a frmula total =
Quantidade1 x Valor1 + Quantidade2 x Valor2 + Quantidade3 x
Valor3. O valor total deve ser apresentado no final da execuo do programa,
conforme o resultado apresentado abaixo:
java Ex0206b 10 1.99 2 5.00 6 3.00
O valor total entre os produtos : 47.9
EXERCCIO DE FIXAO
3-)Crie um programa que receba a largura e o comprimento de um lote de terra e
mostre a rea total existente, conforme o resultado apresentado abaixo:
java Ex0206c 150 10
A rea total de 1500.0 metros quadrados
4-)Crie um programa que receba quatro valores quaisquer e mostre a mdia entre
eles, a somatria entre eles e o resto da diviso da somatria por cada um dos
valores, conforme o resultado apresentado abaixo: valores, conforme o resultado apresentado abaixo:
java Ex0206d 5 7 12 21
A mdia entre os valores : 11.25
A somatria dos valores : 45.0
O resto da diviso entre a somatria e o 1 nmero: 0.0
O resto da diviso entre a somatria e o 2 nmero: 3.0
O resto da diviso entre a somatria e o 3 nmero: 9.0
O resto da diviso entre a somatria e o 4 nmero: 3.0
EXERCCIO DE FIXAO
5-)Uma determinada pessoa que trabalha com a construo de piscinas
precisa de um programa que calcule o valor das construes solicitadas
pelos clientes, sabendo-se que os clientes sempre fornecem o
comprimento, a largura e a profundidade da piscina a ser construda.
Leve em considerao que o valor da construo cobrado por metros Leve em considerao que o valor da construo cobrado por metros
cbicos de gua que a piscina conter e o preo de 45,00 por m
3
,
conforme o resultado apresentado abaixo:
java Ex0206e 12 4 2
A piscina solicitada ter: 96.0 metros cbicos
O valor da construo ser de: R$ 4320.0
COMANDOS CONDICIONAIS e
ESTRUTURA DE CONTROLE em Java
Os comandos condicionais possibilitam que a execuo de um
programa seja desviada de acordo com certas condies
Duas estruturas de desvios: if-else e switch-case possibilitam
executar diferentes trechos de um programa de acordo com certas
condies
If (<condio>)
{
<instrues para condio verdadeira> <instrues para condio verdadeira>
}
else
{
<instrues para condio falsa>
}
O conjunto if else deve ser utilizado em minsculas e caso haja
apenas uma instruo a ser executada, tanto no if como no else, o uso
das chaves se faz desnecessrio
EXEMPLO DO USO DE IF ELSE
O exemplo a seguir verifica se o usurio realmente entrou com um argumento na linha de comando,
depois verifica se o argumento digitado um valor numrico e, logo a seguir, verifica se esse valor
est compreendido entre 0 e 10.
class Exemp0301
{
public static void main (String args[]}
{
if (args.length==1)
{
try try
{
float x = Float.parseFloat (args[0]);
if (x<=10 && x>=0)
System.out.println (Nota = + x + valor valido);
else
System.out.println (Nota = + x + - valor invalido);
}
EXEMPLO DO USO DE IF ELSE
catch (NumberFormatException e)
{
System.out.printl (Digite apenas valores numricos);
}
}}
else
{
System.out.println (Numero de argumentos invalidos);
}
}
}
EXEMPLO DO USO DE IF ELSE
Ao executar o programa, o usurio dever fornecer um argumento (uma nota), por ex. 5,
assim: java Exemp0301 5
Interpretao do programa Exemp0301:
O vetor args receber um elemento (args[0]=5)
if (args.length==1) verifica se a quantidade de argumento digitado igual a 1, ou seja,
se o usurio entrou com apenas um argumento. O length retorna a quantidade de se o usurio entrou com apenas um argumento. O length retorna a quantidade de
elementos que args contm. Se quantidade de argumento passado for 1, executa o
trecho entre chaves (bloco try catch)
A instruo else ser executada caso o usurio entre com uma quantidade de
argumentos diferente de 1.
O bloco try catch o responsvel por verificar se o usurio digitou um valor numrico
como argumento, uma vez que valores indevidos provocaro erros de converso.
if (x<=10 && x>=0) verifica se o valor da nota, digitado pelo usurio, est
compreendido entre os valores 0 e 10.
ESTRUTURA SWITCH-CASE
A estrutura switch-case fornece uma forma mais adequada e eficiente de
atender a necessidade de ter grande quantidade de desvios condicionais. A
estrutura switch-case equivale a um conjunto de instrues if encadeadas.
Switch (<expresso>)
{
case 1: instrues; break;
case 2: instrues; break;
case 3: instrues; break;
default: instrues; default: instrues;
}
Na primeira linha do switch avaliado o resultado da expresso, que normalmente
se refere a uma varivel simples. O resultado dessa expresso comparado
nas diretivas case, executando o bloco de instrues quando a expresso
coincidir com o valor colocado na frente do case.
Se o valor da expresso for 2, ento sero executadas as instrues localizadas
entre case 2: e break.
O programa percorre todas as diretivas case at que uma delas seja igual
expresso inserida no switch. Caso no encontre, sero executadas as
instrues localizadas na diretiva default.
EXMPLO DO USO DE SWITCH-CASE
class Exemp0302
{
public static void main (String args[])
{
if (args.length==1)
{
int x;
x = Integer.parseInt(args[0]);
switch (x)
{
case 0: System.out.println(zero); break;
case 1: System.out.println(um); break; case 1: System.out.println(um); break;
case 2: System.out.println(dois); break;
case 3: System.out.println(tres); break;
.
.
case 9: System.out.println(zero); break;
default: System.out.println(Numero desconhecido);
}
}
else
{
System.out.println(Numero de argumentos invalidos);
}
}
}
EXMPLODO USO DE SWITCH-CASE
Para executar o programa Exemp0302, o usurio dever digitar na linha de
comando um nmero inteiro, por exemplo: java Exemp0302 3
if (args.length==1): verifica se o usurio entrou com um argumento
Switch (x): significa, procure nas instrues case envolvidas pelas chaves se
existe a ocorrncia do contedo armazenado na varivel x
Observe que toda linha do case necessita da instruo break em seu final. S ser
executada a linha do case que satisfazer a condio estabelecida pelo switch.
Caso nenhuma condio seja satisfeita, isto , se o usurio entrou com um
nmero diferente de 0 a 9, ento a instruo default ser executada.
Veja o resultado da execuo com diferentes argumentos:
1-) java Exemp0302 2
dois
2-) java Exemp0302 7
sete
3-) java Exemp0302 13
Numero desconhecido
EXCEES EM JAVA: ESTRUTURA TRY-CATCH
As excees referem-se aos erros que podem ser gerados durante a execuo de um programa. Esses erros
podem e devem ser tratados dentro do programa. A linguagem Java possibilita o controle de erros
atravs da estrutura try-catch Sintaxe da estrutura try-catch
try
{
<conjunto de instrues>
}
catch (Nome da exceo)
{
<tratamento de erro 1>
}}
catch (Nome da exceo)
{
<tratamento de erro 2>
}
catch (Nome da exceo)
{
<tratamento de erro n>
}
Interpretao: Tente executar o conjunto de instrues colocadas entre as chaves aps
a palavra try; se houver algum erro, execute seu tratamento no catch.
Aps o tratamento do erro, a execuo do programa continua a partir do final do
ltimo catch
Exemplo de programa com try-catch
Utilizao de 3 excees em Java. O Programa recebe 2 nmeros inteiros na linha
de comando e realiza as quatro operaes bsicas entre eles
class Exemp0303
{
Public static void main (String args[])
{
try
{{
int num1 = Integer.parseInt (ars[0]);
int num2 = Integer.parseInt (args[1]);
System.out.println (Soma = + (num1 + num2));
System.out.println (Subtracao = + (num1 - num2));
System.out.println (Multiplicacao = + (num1 * num2));
System.out.println (Divisao = + (num1 / num2));
}
Exemplo de programa com try-catch
catch (ArithmeticException e)
{
System.out.println (Erro de divisao por zero!);
}
catch (ArrayIndexOutOfBoundsException e)
System.out.println (Numero de argumentos invalidos!);
}
catch (NumberFormatException e) catch (NumberFormatException e)
{
System.out.println (Digite apenas numeros inteiros!);
}
}
}
Exemplo de programa com try-catch
Interpretao das excees:
ArithmeticException ocorre quando um erro matemtico (aritmtico)
acontece. No exemplo, o erro matemtico pode ocorrer na diviso de um
nmero por zero.
ArrayIndexOutOfBoundsException ocorre quando o usurio deixar de
informar o argumento, pelo menos dois nesse exemplo. No exemplo, se o
usurio esquecer de informar o segundo nmero (args[1]), ele ficar nulo.
Quando um ndice no possui um valor, a linguagem Java considera que ele
no existe e, portanto, no pode ser usado, gerando um erro. Esse erro ocorre no existe e, portanto, no pode ser usado, gerando um erro. Esse erro ocorre
toda vez que um ndice inexistente for utilizado no programa.. Esse erro
poder ser evitado de outra forma: verificando a quantidade de argumentos
fornecidos pelo usurio if(args.length==2).
NumberFormatException ocorre na converso de formatos numricos. No
exemplo, poder ocorrer se o usurio no fornecer um nmero inteiro vlido.
Se ocorrer um dos trs erros apontados durante o processamento das instrues
presentes no try, automaticamente a execuo do programa ser direcionada
para o catch para o tratamento da devida exceo.

Anda mungkin juga menyukai