Exercício de Herança - POO

Exercício - Herança

Uma loja comercial tem 2 tipos de funcionários: Vendedores e administrativos. Para todos eles empresa precisa ter o registro do nome e RG do funcionário. O vendedor tem um salário base mas ganha também comissão de suas vendas. O administrativo tem salário fixo mas podem ganha horas extras adicionais. Faça uma hierarquia de classes que tenha uma classe ancestral que implemente o que for comum aos dois tipos de funcionários e uma classe descendente para cada tipo. Os vendedores devem ter um método que imprima seu salário total considerando que a comissão é de 5%. Para os administrativos as horas extras que são acumuladas e pagas com o valor de um centésimo do salário por hora. Nós dois casos, o método que imprime o salário a receber zera os valores acumulados

Legal o exercício, espero que você consiga fazer.

Antes de começar, no entanto, recomendo a leitura: Coisa importante pra você ler antes de começar.

Abraço.

2 curtidas

beleza vc tem 3 classes

funcionario

vendedor extends funcionario

administrativo extends funcionario

vc quer fazer algo como

Funcionario f = new Vendedor(salario, vendas);
f.imprimeSalarioTotal();

boa sorte

Olá!
Eu pensei em instanciar a classe administrativo.
funcionário f = new administrativo (salario_fixo, horas_extra);
f.imprimeSalario_fixo();
O que vc acha, se poder me ajudar. Obgd

primeiro eu acho q imprimeSalario_fixo é um nome “feio”.

java segue um padrão de camelCase. vc raramente verá nomes de metodos ou variaveis com _ ( ok existen exceções ).

imprimeSalarioFixo()

parece muito mais adequado.

agora vamos la. vc tem 2 tipos de funcionarios. vc não cria instancias da classe Funcionario em si. logo essa classe é abstrata, assim como o metodo imprimeSalarioFixo. quem fizer um extends nessa classe q tem q implementar.

vamos la, vc tem dois numeros: salario e horas extra.

vc tem q somar ao salario um centesimo do salario vezes as horas extras. isso significa

salario + (0.01 * horas extras * salario)

que equivale

1 * salario + (0.01 * horas extras * salario)

que equivale

salario * ( 1 + (0.01 * horas extras ) )

ou seja, vc precisa imprimir o salario multiplicado por 1 + 0.01 * horas extras

agora implementa :slight_smile:

Blza