Suponha que eventualmente um departamento necessita alocar professores para
lecionar disciplinas. Quais seriam as classes a entrar na declaração do
método alocaDisciplina da classe Departamento ?
class Departamento {
..
void alocaDisciplina( ? disciplina, ? professor) {
..
}
}
Suponha que o setor de eventos necessita periodicamente enviar
convites a todos os
membro da comunidade universitária. Quais seriam as classes a entrar na
declaração do método emiteConvite da classe SetorEventos ?
class SetorEventos {
..
void emiteConvite( ? convite, ? convidado) {
..
convite.imprime(convidado.nome);
convite.imprime(convidado.endereco);
..
}
}
Suponha que cursos necessitam periodicamente verificar quais os alunos que
concluiram. Qual seria a declaração do método verificaConclusao da classe
Curso ?
class Curso {
..
boolean verificaConclusao( ? aluno) {
..
if aluno.concluiu() {
..
};
..
}
}
Suponha que o setor de pagamento calcula os valores que professores e alunos de iniciação científica recebe mensalmente baseado em um valor máximo de remuneração
mensal proporcional ao número de dias trabalhados. Qual seria a
classe a entrar
na declaração do método calculaPagamento da classe SetorPagamento ?
class SetorPagamento {
..
Integer calculaPagamento( ? felizardo) {
Integer pagamento;
..
pagamento := felizardo.diasTrabalhados() *
(felizardo.remuneracao() / 30);
..
return pagamento;
}
}
Sublinhe todas as declarações de métodos que encontrar,
circule os objetos, indique com uma seta os envios de mensagens.Veja aqui os esqueletos de código necessários para a solução do exercício.
Jorge Fernandes, jhcf@di.ufpe.br