楽器
あなたは音楽オーケストラの楽器在庫を管理するアプリケーションを開発しています。さまざまな種類の楽器とその動作をモデル化する必要があります。
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