UNIVERSIDADE FEDERAL DO RIO DE JANEIRO
Programação II - Lista de Exercícios – Classes e Herança
1. Crie duas classes: Funcionário e Gerente.
a. Gerente deve ser classe filha de Funcionário
b. Os atributos de Funcionário são: nome, CPF, salário e departamento
c. A classe Funcionário tem o método bonificar(), que não recebe nenhum parâmetro,
e acrescenta 10% ao salário dele
d. A classe Gerente deve ter atributos adicionais de senha e número de funcionários
gerenciados
e. A classe Gerente tem dois métodos a mais
i. O método autenticarSenha(senha), que apenas compara a senha do
parâmetro com o valor do atributo senha, retornando True ou False.
ii. O método bonificar(), que acrescenta ao gerente o valor de 15% ao seu
salário.
f. Crie objetos e teste suas classes
2. Crie a classe Emprestável com os atributos privados: título, nomePessoa, telefonePessoa e
dataEmprestimo com seus getters e setters públicos.
a. Crie a classe Livro e a classe CD, que herdem de Emprestável e tenham os atributos
autor e artista, respectivamente, também privados com getters e setters públicos.
b. Em uma lista, coloque pelo menos 3 itens emprestáveis diferentes de cada tipo,
emprestados para pessoas diferentes.
c. Percorra essa lista imprimindo o que foi emprestado para quem e quando, no
seguinte formato: “O item X foi empresado para Y em Z”.
d. Para utilizar o suporte a data, inclua no início do seu programa a linha “from
datetime import *”. As datas devem ser digitadas no formato (hh,mm,ss), conforme
o exemplo para 11h30: d = time(11,30,00).
3. Crie uma classe Funcionario com atributos privados nome, cpf e salário; e um construtor
que deve receber como parâmetro nome e cpf. Todos os atributos devem ter métodos
getters definidos. Crie métodos setters conforme você sentir necessidade.
a. Crie uma classe TrabalhadorAssalariado e outra TrabalhadorHorista, ambas
herdando de Funcionario. A classe TrabalhadorAssalariado possui o método
definirSalario(salario) que recebe um valor como parâmetro e o atribui ao atributo
salário.
b. A classe TrabalhadorHorista possui os atributos privados valorHora e
horasTrabalhadasMes, com seus respectivos getters e setters. Essa classe também
possui o método calcularPagamento(), que ao ser invocado deve calcular o valor do
salário e preencher este atributo. O salário é obtido multiplicando-se as horas
trabalhadas no mês pelo valor da hora. Crie defesas que verifiquem se os atributos
necessários para o cálculo do salário estão preenchidos. Se não estiverem emita
aviso.