楽器
あなたは音楽オーケストラの楽器在庫を管理するアプリケーションを開発しています。さまざまな種類の楽器とその動作をモデル化する必要があります。
name
とtype
の2つの属性を持つMusicInstrument
クラスを作成するよう求められています。このクラスには、"Playing the instrument"と表示するplay()
メソッドも含めてください。
次に、MusicInstrument
クラスを継承するGuitar
クラスを作成します(ギターのtype
はString
であり、これはGuitar
の__init__
で自動的に設定されるべきです)。このクラスには、"Tuning the guitar"と表示するtune()
メソッドを持たせます。Guitar
クラスのplay()
メソッドは、まずtune()
メソッドを呼び出し、その後super()
を使用して親クラスのplay()
を呼び出す必要があります。
同様に、Guitar
クラスと同じ方法でViolin
クラスを作成します(こちらもtype
はString
です)。tune()
メソッドは"Tuning the violin"と表示するようにしてください。
最後に、MusicInstrument
クラスを継承するPiano
クラスを作成します(ピアノのtype
はKeyboard
です)。Piano
クラスはplay()
メソッドをオーバーライドしますが、演奏時にチューニングする必要はありません。
入力 | 出力 |
---|---|
| Tuning the guitar |
注意: 楽器のname
とtype
属性は、インスタンス化時にクラスのコンストラクタにパラメータとして渡す必要があります。play()
メソッドはパラメータなしで呼び出してください。
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB