Allora, credo di avere seri problemi di comprensione del testo, e ho seriamente bisogno di aiuto, visto che siete esperti qualcuno mi darebbe 1 mano per fare 1 programma del genere?
Questo è il testo:
Vanno realizzate dell classi che rappresentino dati relativi ad una rete fognaria. Si suppone che le condutture si colleghino fra loro soltanto ai pozzetti. Ogni pozzetto ha una sola conduttura di uscita. Si realizzino le seguenti classi:

Conduttura
per ogni conduttura vengono memorizzate la lunghezza e il pozzetto di partenza e di arrivo; si usa il valore null come pozzetto di uscita per indicare che la conduttura scarica al di fuori della rete
Pozzetto
per ogni pozzetto vengono rappresentate le sue coordinate (due interi), l'insieme delle condutture entranti e la (singola) conduttura uscente
Allaccio
un allaccio è un punto in cui la fognatura di un edificio si collega alla rete fognaria; esisono due tipi di allacci, ma in ogni caso va memorizzato l'indirizzo (una stringa) dell'edificio
AllaccioConduttura
è un allaccio che è stato fatto su una conduttura; va memorizzata la conduttura e il punto di allaccio in termini di distanza dall'inizio della conduttura
AllaccioPozzetto
è un allaccio su un pozzetto; in questo caso va memorizzato soltanto il pozzetto
Queste classi vanno messe in un package fogna. Tutte le classi devono essere incapsulate e i loro oggetti non modificabili. Non sono ammessi valori nulli. Vanno realizzati i seguenti metodi in tutte le classi:

costruttore e metodi get
metodi standard toString, equals, hashCode e clone (che realizza la clonazione profonda)

Il mio ragionamento è stato questo:
Allaccio potendo essere solo AllaccioConduttura e AllaccioPozzetto sarà 1 classe astratta, ma per la classe Conduttura e la classe Pozzetto non so davero che fare, dovrei creare 1 sovraclasse Conduttura e 2 sottoclassi una per rappresentare le condutture entranti con 1 HashSet (essendo 1 insieme) e l'altra per rappresentare la singola conduttura uscente, ma come rappresentare la classe pozzetto? e come mettere in relazione tra di loro conduttura e pozzetto? (visto che ogni conduttura ha 1 pozzetto di partenza e 1 di arrivo e ogni pozzetto l'insieme di condutture entranti e la singola conduttura uscente)
Sono molto confusa e di sicuro avrò detto molte castronerie ma vi prego aiutatemi
(spero di migliorare 1 giorno, come posso fare? -_-)