Strumenti Musicali
Stai sviluppando un'applicazione per gestire l'inventario degli strumenti di un'orchestra musicale. Devi modellare diversi tipi di strumenti musicali e le loro azioni.
Ti viene richiesto di creare una classe MusicInstrument
che abbia due attributi: name
e type
. Questa classe deve anche avere un metodo play()
che stampa "Playing the instrument".
Successivamente, crea una classe Guitar
che eredita dalla classe MusicInstrument
(la chitarra è di type
String
. Questo dovrebbe essere impostato automaticamente nell'__init__
di Guitar
). Questa classe dovrebbe avere un metodo tune()
che stampa "Tuning the guitar". Il metodo play()
nella classe Guitar
dovrebbe prima chiamare il metodo tune()
e poi chiamare play()
dalla classe genitore usando super()
.
Crea una classe Violin
allo stesso modo della classe Guitar
(anche il violino è di type
String
). Il metodo tune()
dovrebbe stampare "Tuning the violin".
Infine, crea una classe Piano
che eredita anch'essa dalla classe MusicInstrument
(il pianoforte è di type
Keyboard
). La classe Piano
dovrebbe sovrascrivere il metodo play()
, ma non dovrebbe essere accordato quando viene suonato.
Input | Output |
---|---|
| Tuning the guitar |
Nota: Gli attributi name
e type
dello strumento devono essere passati come parametri al costruttore della classe durante l'instanziazione. Il metodo play()
dovrebbe essere chiamato senza alcun parametro.
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB