Sto cercando di capire quale sia la differenza tra un relazione tra classi di associazione e una relazione tra classi di aggregazione e soprattutto come esse si implementano.

Per tal motivo, sto cercando di risolvere il seguente esercizio:

"Sia data un'universitāche abbia da 1 a 20 dipartimenti diversi e ogni dipartimento ha da 1a 5 professori. Inoltre, ogni dipartimento č individuato da un nome. Ogni docente ha un nome, un cognome; un codice intero e una etā."


Il codice che ho scritto fino a questo momento č il seguente ma non so se č corretto ......

codice:
public class Universita {

private Dipartimento[] dipartimenti = new Dipartimento[20];

   public void distruggi(){

    if(dipartimenti.length()!=0)
           for(Dipartimento d : dipartimenti) d.distruggi();
        
         dipartimenti = null;
   }
}