Qui vi riporto la consegna dell'esercizio,assolutamente non pretendo che lo fate voi al posto mio,ma dopo che ho postato tale esercizio avrei già delle domande :
--- Testo dell'esercizio ---

Consideriamo di modellare il concetto di persona (con nome, cognome,
data di nascita, codice fiscale) e il fatto che questa persona, oltre ad
avere dei dati anagrafici, possa anche avere il ruolo di studente, di
lavoratore o di studente e lavoratore.

Si vuole:

- dare una soluzione standard che usi l'ereditarieta` (quattro classi:
la classe Persona con tre sottoclassi, Studente, Lavoratore,
StudenteLavoratore) , sapendo discutere quali sono i limiti di questa
soluzione;

- dare una soluzione con il design pattern Decorator, in cui Studente e
Lavoratore hanno la funzione di oggetti decorator; come si modella
invece StudenteLavoratore? Quali sono i vantaggi di questa soluzione? Se
si volesse forzare il codice client ad avere al massimo una decorazione
di tipo Lavoratore e una di tipo Studente per ogni persona, cosa si deve
fare?

Per entrambe le soluzioni, presentare un diagramma delle classi e un
programma Java funzionante, che contenga un metodo StampaInfo il quale:
- per una persona, stampa nome, cognome, data di nascita, codice fiscale;
- se è anche lavoratore, stampa anche professione e stipendio;
- se è anche studente, stampa anche facoltà e corso di laurea.

--- Fine testo --

Ora la prima domanda che mi pongo,dato che nell'ereditarietà una classe può avere una sola sopraclasse,quindi la classe persona potrà essere sopra classe della classe studente e lavoratore, la classe StudenteLavoratore non può ereditare sia dalla classe Studente e sia dalla classe lavoratore,cosa mi consigliate di fare? di rendere la classe StudenteLavoratore direttamente sottoclasse della classe Persona come Studente e lavoratore?