Linguagem de Programação
2. Crie uma classe abstrata Funcionario
1. um atributo codigo que seja um número inteiro sequencial para cada objeto que for criado;
2. um atributo nome do tipo String;
3. um atributo salario do tipo double;
4. getters e setters necessários; 5. crie um construtor que recebe o nome como parâmetro;
6. um método abstrato getRemumeracao que retorna um double.
3. Crie uma classe
Diretor que estenda Funcionario e implementa a interface
Autenticavel
1. um atributo de classe adicional do tipo constante double com o valor 0.10;
2. um atributo senha do tipo String que inicie com “1234”;
3. um método setSenha que receba dois parâmetros String, senhaantiga e senhanova, e se o parâmetro senhaantiga for igual ao atributo senha, trocar o valor do atributo senha para o parâmetro senhanova e retornar true, caso contrário retornar false. Dica: para comparar duas Strings utilize o método equals(). Ex.: s1.equals(s2);
4. o método login deve retornar true se o parâmetro senha for igual ao atributo senha, caso contrário retornar false;
5. o método getRemuneracao deve retonar o atributo salario mais o atributo adicional; 4. Crie uma classe
Estagiario que estenda Funcionario e implemente a interface
Comparable
1. um atributo de classe desconto do tipo constante double com o valor 0.05;
2. o método getRemuneracao deve retonar o atributo salario menos o atributo desconto; 3. o método
CompareTo deve usar como critério de comparação o atributo nome.
5. Crie uma classe
Sistema
1. um método logar que recebe um objeto Autenticavel e uma senha do tipo String e retorna a chamada do método login do objeto Autenticavel passando como parâmetro a senha.
6. Crie uma classe
Principal
1. Crie um Diretor de nome “Steve”; mude a senha dele para “4321”; atribua um salário de 10000 e mostre a remuneração;
2. Crie um Sistema e passe o Diretor