TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Classes Abstratas e Interfaces

Por:   •  23/5/2018  •  Abstract  •  701 Palavras (3 Páginas)  •  230 Visualizações

Página 1 de 3

Trabalho Prático

Classes Abstratas e Interfaces

Resolver em sala, individualmente ou em grupo de até dois alunos, e apresentar os resultados ao professor, até o dia 21/05/2018 (Matutino) ou 22/05/2018 (Noturno).

Objetivo do Trabalho: desenvolver habilidade de abstração e praticar uso de classes abstratas e interfaces.

1) Implementar em Java uma classe abstrata de nome Empregado, com os seguintes membros:

  • nome : String
  • sobrenome : String
  • cpf : String
  • Construtor que inicia os três atributos acima
  • Getters e Setter para os atribuots acima
  • String toString( )
  • Método abstrato Double calcularSalario( )

2) Implementar uma interface Imprimivel, com o seguinte método abstrato: void mostrarDados().

3) Implementar três classes que extendem Empregado e implementam Imprimivel: Mensalista, Horista e Comissionado.

A classe Mensalista deve ter os seguintes membros:

  • O atributo salario : double
  • Construtor com 4 argumentos: nome, sobrenome, cpf, salario
  • Método setSalario(double salario) que valida e só atualiza o salario, se o parâmetro for maior do que o salario atual do empregado, senão mantém este (regra: depois de contratado, o salario não pode diminuir, só aumentar)
  • Getter para salario
  • O salario ganho por Mensalista é o proprio conteúdo do atributo salario
  • Mostrar os dados nome, sobrenome, cpf e salario

A classe Horista deve ter os seguintes membros:

  • Os atributos valorHora : double  e  qtHoras : double 
  • Construtor com 4 argumentos: nome, sobrenome, cpf e valorHora
  • Método setValorHora(double vrHora) que valida e só atualiza o valorHora, se o parâmetro for maior do que o valorHora atual do empregado, senão mantém este (regra: depois de contratado, o valor da hora não pode diminuir, só aumentar)
  • Método setQtHoras(double qtH) deve validar se qtH é maior que zero e menor ou igual a 200, senão seta qtHoras = 0 (regra: empregado horista não pode trabalhar mais de 200 horas por mês e nem trabalha quantidade negativa de horas)
  • Getters para valorHora e qtHoras
  • O salario de horista é calculado pela quantidade de horas trabalhadas vezes o valor da hora, se quantidade até 168 horas; o que passar de 168 horas é hora extra e deve ser calculado com 50% de acréscimo [fórmula: (qtHoras – 168) *vrHora * 1.5.
  • Mostrar os dados nome, sobrenome, cpf, valor da hora, quantidade de horas trabalhadas e salario.

A classe Comissionado deve ter os seguintes membros:

  • Os atributos valorVendas : double e percentComissao : double
  • Contrutor com 3 argumentos: nome, sobrenome e cpf
  • Método setValorVendas(double vrVendas) deve validar se de vrVendas for menor que zero, setar valorVendas = 0
  • Método setPercentComissão( ) não recebe parâmetro e seta este atributo conforme valorVendas: até $100.000 – percentComissão = 5,0; até $150.000  - percentVenda = 6.5; acima $150.000 – percentVenda = 7.5
  • Getters para valorVendas e percentComissao
  • O salario de comissionado é calculado pela valor de vendas vezes o percentual de comissão
  • Mostrar os dados nome, sobrenome, cpf, valor de vendas, percentual de comissão e salario.

4) Criar ainda uma classe ComissionadoComFixo que extende a classe Comissionado mas acrescenta um salario base. Esta classe acrescenta o seguinte:

  • um salarioFixo
  • Getter e Setter para salarioFixo. O Setter tem mesma regra do setSalario do Mensalista
  • O calculo do salario é o fixo mais a comissão como calculado para o comissionado
  • Mostrar os mesmos dados do comissionado.

Por fim, criar uma classe Principal, para testar as classes implementadas. A classe Principal deve, no mínimo:

  • Instanciar um objeto Mensalista chamando seu construtor com respectivos argumentos. Depois informar um salario para este, calcular o salario e mostrar seus dados
  • Instanciar um objeto Horista chamando seu construtor com respectivos argumentos. Depois informar o valor da hora e a quantidade de horas trabalhadas no mês, calcular o salário e mostrar os dados.
  • Instanciar um objeto Comissionado chamando seu construtor com respectivos argumentos. Depois informar a valor de vendas no mês, calcular o percentual de comissão, o salário e mostrar os dados.
  • Instanciar um objeto ComissionadoComFixo chamando seu construtor com respectivos argumentos. Depois informar a valor do salario fixo e das vendas no mês, calcular o percentual de comissão, o salário e mostrar os dados

Use sua criatividade para resolver pontos omissos na especificação, justificando as decisões eventualmente tomadas. Não hesite em consultar o professor no caso de dúvidas!

...

Baixar como (para membros premium)  txt (4.7 Kb)   pdf (212.4 Kb)   docx (349.5 Kb)  
Continuar por mais 2 páginas »
Disponível apenas no TrabalhosGratuitos.com