javaのオーバーライドとは
javaのオーバーライドについて解説します。
- 初心者の方
- 忘れたけどもう1回思い出したい人
向けに解説します。
クラスの継承がわかっている人向けに話を進めるので
わからなければ他サイトを参照してください。
オーバーライドとは?
オーバーライドとは直訳すると
『上書き』
です。
言葉の通りで
『クラスの継承先に対してメソッドの上書きができる』
というのが、オーバーライドです。
例えば
クラスAがあったとします。
そのクラスに、Hello Worldを表示させるメソッドdisplayメソッドがあったとします。
![](https://computer.sarujincanon.com/wp-content/uploads/2022/05/オーバーライド1.png)
そのクラスAを継承させたクラスBが存在します。
![](https://computer.sarujincanon.com/wp-content/uploads/2022/05/オーバーライド2.png)
クラスBの中で
クラスAで定義した同じ名前のdisplayメソッドを
定義して再度、書き替えることができるのです。
このことを
『クラスAのメソッドを継承先のクラスBでオーバーライドした』
と言います
![](https://computer.sarujincanon.com/wp-content/uploads/2022/05/オーバーライド最終系.png)
なので、
クラスBのdisplayメソッドをを呼び出すと
『Hello World』
ではなく、
『good morning Japan』
が表示されるのです。
※図ではなく、ソースコードで知りたい方はこちらのサイトの方が詳しいのでこちらを参照してください。
何の意味があるのか?
どのような技術かはすぐにお分かりいただけたかと思います。
こんなことして何の意味があるのか?
と思うかもしれません。
継承先のクラスが1~2個だったら意味がないでしょう。
しかし、それが3,4個、、、となった場合、
『このメソッドだけ変えたいな。』
と思うときがあるのでその時に役立ちます。
![](https://computer.sarujincanon.com/wp-content/uploads/2022/05/オーバーライド何のため.png)
最後に
オーバーライドについてお分かり頂けたでしょうか?
実は経験した開発現場ではあまりオーバーライドは使っておりません。
皆さんの現場ではどうでしょうか?
あまり現場で使う機会がなければ
概念だけ覚えておいてまたは思い出しておいてそれ以上深入りしない方が良い。
と思います。
なぜならばその技術を活用しないと、習得できないからです。
『活用しない技術はドンドン忘れていく』
これが大原則だと思っています。
だったら使う技術に焦点をあてて勉強していったほうが技術力はあがっていくし、
実用的なプログラムを作れる技術が上がっていく。
『技術は必要になったときに勉強する』
これが基礎であり、奥義だと思います。
では良いプログラミングライフを!