Buongiorno a tutti! Non so se dalla domanda si capisca bene il mio problema, ammetto che non è semplice. Praticamente io ho una classe Evento:
codice:
public abstract class Evento {    private String nome;
    private Calendar start;
    private int durata;
    private String luogo;
    private Calendar fine;


    public Evento(String nome, Calendar start, int durata, String luogo) {
        this.nome = nome;
        this.start = start;
        this.durata = durata;
        this.luogo = luogo;
        fine();
    }


    public Calendar getFine() {
        return fine;
    }


    public void setFine(Calendar fine) {
        this.fine = fine;
    }


    public String getNome() {
        return nome;
    }




    public int getDurata() {
        return durata;
    }


    public Calendar getStart() {
        return start;
    }


    public String getLuogo() {
        return luogo;
    }
    
    public abstract void fine();
}
e una classe Agenda, che, tra le altre cose ha la funzione di creare nuovi eventi, usando questo metodo:
codice:
    public void nuovoEvento(String nome, String luogo, int giorno, int mese, int anno, int inizioH, int inizioM, int durata) {        Calendar inizio = new GregorianCalendar(anno, mese, giorno, inizioH, inizioM);
        Evento e = new Semplice(nome, inizio, durata, luogo);
        if (verifica(e) == true) {
            eventi.add(e);
        }
    }
Ora, io provo a creare due eventi, diciamo A e B. L'evento A viene creato perfettamente, con l'inizio dove lo voglio io e la fine corretta. Viene quindi aggiunto alla lista. L'evento B viene invece creato con la fine giusta, ma l'inizio completamente diverso. Sbaglio qualcosa? Ovviamente resto a disposizione per qualsiasi chiarimento.