Vous êtes sur la page 1sur 7

UNIBRATEC

TI Programao Orientada a Objetos


Crystian Leo
Baseado no material da professora Karina Oliveira
Oitava Lista de Exerccios Tratamento de excees
1) Tratamento de Excees: Escreva um programa para preencher valores de um vetor de inteiros com
10 posies. O usurio ir informar os valores a serem inseridos e suas respectivas posies no
array. O programa deve tratar as excees ArrayIndexOutOfBoundsException quando for informada
uma posio inexistente do vetor e NumberFormatException quando o valor informado no for
numrico, Exemplos:

Valor: 12
Posio: 0
O programa ir inserir o valor 12 na posio 0.

Valor: 5
Posio: 15
O programa dever tratar a exceo pois a posio informada invlida.

Valor: 18
Posio: 9
O programa ir inserir o valor 18 na posio 9.

2) Tratamento de Excees: Implemente a classe VerificaString que possui um mtodo esttico void
verifica(String str) throws ExcecaoStringInvalida que recebe uma String como parmetro e verifica
se a mesma composta apenas por caracteres maisculos. A mensagem de erro da exceo que pode
ser lanada pelo mtodo indicar um de dois tipos de erros especficos: se existe algum caractere que
no uma letra ou se alguma das letras no maiscula. Para verificar o tipo dos caracteres utilize
os mtodos isLetter e isUpperCase da classe Character (ambos static).

3) Herana e Tratamento de Excees: Implementar as classes do modelo abaixo:


a) Atributos das classes Funcionario e Funcao:
i) Numricos no podem receber valores menores que zero (Lanar exceo
ExcecaoDadoInvalido);
ii) Strings no podem receber valores nulos ou string vazia (Lanar exceo
ExcecaoDadoInvalido).
b) Mtodos de acesso aos atributos (get / set);
c) Um construtor para cada classe recebendo valores para todos os seus atributos;
d) ImplementarumaclassechamadaCadastroFuncionarioscomasseguintesdefinies:
i) Atributos: funcionarios (tipo: Funcionario[ ]), quantFunc (tipo: int).
ii) Construtor: Apenas o construtor default inicializando o atributo funcionarios com um array
de 50 posies e o atributo quantFunc com zero.
iii) Mtodos de acesso: Apenas os mtodos get dos atributos.
iv) Mtodo: void inserir(Funcionario func) throws ExcecaoFuncionarioJaCadastrado,
ExcecaoCadastroCheio. OBS.: A chave do funcionrio o atributo cdigo.
v) Mtodo Funcionario buscar(int cdigo) throws ExcecaoFuncionarioNaoCadastrado.
e) OBS.: Usar a tcnica de encapsulamento sugerida no curso para todas as classes;
f) Implementar uma aplicao chamada AplicacaoDeFuncionarios que cria um objeto do tipo
CadastroFuncionarios. Permita que sejam criados objetos do tipo Funcionrio, a partir de dados
fornecidos pelo usurio, para serem inseridos no objeto CadastroFuncionarios. Oferecer para o
usurio um menu para a escolha entre Gerente, Vendedor e Operador (OBS.: Use uma nica
varivel polimrfica para receber os objetos criados de acordo com a opo do usurio).
g) Implementar na AplicacaoDeFuncionarios um mtodo esttico que imprime a folha de
pagamento da empresa de acordo com a tabela exemplo abaixo. Oferecer, dentre as opes de
menu do usurio, a opo imprimir folha de pagamento:

!"#$% '( )%*%+(,-" '% (+).(/%0
1"+(0 2%#3.4"0 !5,67"0
8"7" 9: ;<<<=<< >(.(,-(
?%.4% 9: @<<=<< A(,'('".

B"-%# '% C"#$% '( )%*%+(,-"0 9: ;@<<=<<
Assinatura do mtodo: void imprimeFolha(Funcionario[ ] func);















4) Interface e Tratamento de Excees: Implemente a interface e as classes do modelo abaixo:

a) Atributos:
i) Atributos numricos no podem receber valores menores que zero (Lanar exceo
ExcecaoFormaInvalida);
ii) Os valores dos atributos base e altura de um objeto do tipo Retngulo no podem ser iguais
(Lanar exceo ExcecaoFormaInvalida);
iii) Os valores dos lados do tringulo retngulo devem respeitar a seguinte regra: hipotenusa2 =
catetoA2 + catetoB2 (Lanar exceo ExcecaoFormaInvalida).
b) Mtodos de acesso aos atributos (get / set);
c) Um construtor para cada classe recebendo valores para todos os seus atributos;
d) OBS.: Usar a tcnica de encapsulamento sugerida no curso;
e) Implementar uma aplicao que cria objetos do tipo FormaGeometrica, a partir de dados
fornecidos pelo usurio e, ao final, imprime os valores dos atributos dos objetos criados. O
programa deve imprimir tambm o valor da rea e do permetro das formas geomtricas criadas.
Oferecer para o usurio um menu para a escolha entre Retngulo e Tringulo Retngulo. OBS.:
Use uma nica varivel polimrfica para receber os objetos criados de acordo com a opo do
usurio.







5) Herana e Tratamento de Excees: Implementar as classes do modelo abaixo:


a) Atributos:
i) Atributos numricos no podem receber valores menores que zero (Lanar exceo
ExcecaoDadoInvalido);
ii) Atributos do tipo String no podem receber valores nulos ou string vazia (Lanar exceo
ExcecaoDadoInvalido).
iii) O Atributo sistemaCor da classe AparelhoEletronico no pode receber valores diferentes dos
permitidos pelo seu domnio: NTSC ou PAL-M. (Lanar exceo
ExcecaoDadoInvalido);
iv) O Atributo regiao da classe DVD no pode receber valores diferentes dos permitidos pelo
seu domnio: 1, 2, 3 ou 4. (Lanar exceo ExcecaoDadoInvalido);
b) Mtodos de acesso aos atributos (get / set);
c) Um construtor para cada classe recebendo valores para todos os seus atributos;
d) OBS.: Usar a tcnica de encapsulamento sugerida no curso;
e) Implementar uma aplicao que cria objetos do tipo AparelhoEletronico, a partir de dados
fornecidos pelo usurio e, ao final, imprime os valores dos atributos dos objetos criados.
Oferecer para o usurio um menu para a escolha entre Televiso e DVD. OBS.: Use uma nica
varivel polimrfica para receber os objetos criados de acordo com a opo do usurio.





6) Herana, Interface e Tratamento de Excees: Implemente a interface e as classes do modelo abaixo:

a) Interface Talkable: O mtodo talk( ) que deve retornar uma String que representa a fala do
animal.
b) Atributos:
i) Atributos do tipo String no podem receber valores nulos ou string vazia (Lanar exceo
ExcecaoDadoInvalido).
c) Mtodos de acesso aos atributos (get / set);
d) Um construtor para cada classe recebendo valores para todos os seus atributos;
e) OBS.: Usar a tcnica de encapsulamento sugerida no curso;
f) Implementar uma aplicao que cria objetos do tipo Animal, a partir de dados fornecidos pelo
usurio e, ao final, imprime os valores dos atributos dos objetos criados. O programa deve
imprimir tambm a fala do animal. Oferecer para o usurio um menu para a escolha entre
Cachorro e Arara. OBS.: Use uma nica varivel polimrfica para receber os objetos criados de
acordo com a opo do usurio.







7) Herana e Tratamento de Excees: Implementar as classes do modelo abaixo:

a) Atributos:
i) Numricos no podem receber valores menores que zero (Lanar exceo
ExcecaoDadoInvalido);
ii) Strings no podem receber valores nulos ou string vazia (Lanar exceo
ExcecaoDadoInvalido).
b) Mtodos de acesso aos atributos (get / set);
c) Um construtor para cada classe recebendo valores para todos os seus atributos;
d) OBS.: Usar a tcnica de encapsulamento sugerida no curso;
e) Implementar uma aplicao que cria objetos do tipo Cliente, a partir de dados fornecidos pelo
usurio e, ao final, imprime os valores dos atributos dos objetos criados. Oferecer para o usurio
um menu para a escolha entre Cliente Pessoa Fsica, Cliente Pessoa Jurdica, Cliente Fidelizao
Pessoa Fsica e Cliente Fidelizao Pessoa Jurdica. OBS.: Use uma nica varivel polimrfica
para receber os objetos criados de acordo com a opo do usurio.












8) Herana e Tratamento de Excees: Implementar as classes do modelo abaixo:

a) Atributos:
i) Numricos no podem receber valores menores que zero (Lanar exceo
ExcecaoDadoInvalido);
ii) Strings no podem receber valores nulos ou string vazia (Lanar exceo
ExcecaoDadoInvalido).
b) Mtodos de acesso aos atributos (get / set);
c) Um construtor para cada classe recebendo valores para todos os seus atributos;
d) OBS.: Usar a tcnica de encapsulamento sugerida no curso;
e) Implementar uma aplicao que cria objetos do tipo Aluno, a partir de dados fornecidos pelo
usurio e, ao final, imprime os valores dos atributos dos objetos criados. Oferecer para o usurio
um menu para a escolha entre Aluno, AlunoMonitoria e AlunoIniciacaoCientifica. OBS.: Use
uma nica varivel polimrfica para receber os objetos criados de acordo com a opo do
usurio.