Pessoal estou a fazer um trabalho de uma agenda, já fiz tudo o que conseguia e percebia e fui tirando algumas dúvidas por aqui, no entanto restam duas dúvidas que não consigo esclarecer e esperava que alguém me pudesse ajudar.
as dúvidas são: Para que serve o método getDia() da classe AgendaDia que aparece no diagrama UML (não vejo uso para ele)
e como implementar o método intersecta() das classes Evento, Aniversário e Reuniao.
E já agora será que os métodos mostrar estão correctos? É que não dei uso para ele na classe Evento.
[code]package trabalho1;
public abstract class Agenda extends Evento{
private Evento[] eventos;
public int maxEventos;
public Agenda(int maxEventos){
this.maxEventos=maxEventos;
eventos= new Evento[maxEventos];
}
public boolean completa(){
if(maxEventos!=0){
return false;
}
else
return true;
}
public boolean add(Evento ent){
if(ent.intersecta(ent)){
return false;
}
if(completa()){
return false;
}
else
eventos[maxEventos-1]= ent;
maxEventos--;
return true;
}
public void mostrar(){
maxEventos=eventos.length;
while(maxEventos>=0){
eventos[maxEventos-1].mostrar();
maxEventos--;
}
}
}
[/code]
[code]package trabalho1;
public class AgendaDia extends Agenda{
private int dia;
public AgendaDia(int maxEventos, int dia){
super(maxEventos);
this.dia=dia;
}
public int getDia(){
return dia;
}
public void mostrar(){
System.out.println("Agenda do dia "+dia);
super.mostrar();
}
}
[/code]
[code]package trabalho1;
public abstract class Evento {
protected Evento(){
}
public void mostrar(){
}
public boolean intersecta(Evento e){
}
}[/code]
[code]package trabalho1;
public class Aniversario extends Evento{
private String nome;
public Aniversario(String nome){
this.nome=nome;
}
public void mostrar(){
System.out.println("Aniversário de "+nome);
}
public boolean intersecta(Evento e){
return false;
}
}[/code]
[code]package trabalho1;
public class Reuniao extends Evento{
private String local;
private int inicio, fim;
public Reuniao (String local, int inicio, int fim){
this.local=local;
this.inicio=inicio;
this.fim=fim;
}
public void mostrar(){
System.out.println("Reunião - "+local+", das "+inicio+" às "+fim+" horas");
}
public boolean intersecta(Evento e){
}
}[/code]
[code]package trabalho1;
public class Teste {
public static void main (String args[]){
Reuniao r1 = new Reuniao("Lisboa", 12, 14);
Reuniao r2 = new Reuniao("ISEL", 15, 18);
Reuniao r3 = new Reuniao("ISEL", 14, 18);
Aniversario a1 = new Aniversario("João");
Aniversario a2 = new Aniversario("Maria");
AgendaDia d = new AgendaDia(4,12);
d.add(r1);
d.add(r2);
d.add(r3);
d.add(a1);
d.add(a2);
d.mostrar();
}
}[/code]