「Unity C#」overrride virtual
本日はクラスの継承について学んだ
それを細かく説明するのではなく初めてみる人でもわかるように記事にして行こうと思う。
・virtual
これをつけたメソッドはオーバライド(上書き)していいよという印。
スーパークラス(元のクラス)のメソッドにつける。
そのメソッドは上書きをしなくてもサブクラスでそのまま使うこともできる。
そして「virtual」を付け、オーバーライドを許可したメソッドのことを「仮想メソッド」と呼ぶらしい。
- override
このメソッドはオーバライド(上書き)しますよという宣言のようなもの。
サブクラスのメソッドにつける。
これを付けないとオーバーライドすることができない。
継承したクラスの多態性を実現するのが「オーバーライド」。
継承した新しいクラス(サブクラス)では、勿論継承元のクラス(スーパークラス)のメソッドを使うことができる。その時サブクラス上で新しくメソッドを作成することもできるが、スーパークラスのメソッドを上書きすることもできる。
それが「オーバーライド」
調べていて間違えやすいのがオーバーロードとオーバーライドで
・同じクラス内で違う動きのする同じ名前のメソッドを作るのが「オーバーロード」
・別のクラスで、メソッドを上書きするのが「オーバーライド」
らしい
今日はここまで!