Il modo in cui viene formulata la domanda lo fa sembrare un problema di compiti a casa. In questo caso, tieni presente che la risposta potrebbe non corrispondere a ciò che il tuo istruttore si aspetta.
Un diagramma di classi mostra la struttura statica di come le classi si correlano tra loro, ma il fatto che un metodo in classe A deleghi il proprio lavoro a un metodo in classe B non è correlato alla struttura statica. Per questo motivo, la delega non viene mostrata in un diagramma di classe.
Viste le informazioni presentate nella domanda, vorrei creare due diagrammi:
- Un diagramma di classe che mostra
Printer
e RealPrinter
con una relazione di composizione tra di loro ( Printer
contiene un'istanza RealPrinter
)
- Un diagramma di sequenza per il metodo
Printer::print
che mostra che delega a RealPrinter::print
.