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:
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.