プログラミング、フリーダイビング、ブロックチェーンのブログ

プログラミング道場

私がオススメするプログラミング教材です

私がおすすめするプログラミング教材のまとめ【書籍】

目次1 これからエンジニアになりたい人へ向けた本2 プログラミング言語3 アプリ開発4 サーバー、インフラ、セキュリティなど5 機械学習系6 ゲーム開発7 データベース8 デザイン9 組織作り10 自作シリーズ11 その他12 おまけ これ ...

続きを見る

【Ruby入門】クラスの継承の使い方

更新日:

記事の内容


この記事では、クラスの継承やオーバーライドを紹介します。

クラスの継承

クラスの継承を試してみよう

クラスの継承とは、既に定義済みのクラスやメソッドを再利用するようなイメージです。
クラスの継承をするためには「<」というキーワードを使います。
コードを見た方がわかりやすいと思うので、実際にコードを見ていきましょう。

Animalクラスを継承したDogクラスでも、runメソッドを使えることがわかります。
このように継承元である親クラスのメソッドを使えるようになるのが、継承のメリットです。
ただし、継承は一つのクラスしかできないので注意して下さい。
Dogクラスは、既にAnimalクラスを継承しているので、他のクラスを継承することはできません。

initializeメソッドの動作を確認してみよう

initializeの動作も確認してみます。
Dogクラスにinitializeが定義されていない場合は、親クラスのinitializeを使うことができます。

次にDogクラスにもinitializeを実装してみます。
子クラスであるDogクラスにinitializeが定義されている場合は、子クラスのinitializeが優先されます。

子クラスでinitializeを定義しつつ、親クラスのinitializeを使いたい場合は、以下のように「super」キーワードを使います。

オーバーライド

次に親クラスにあるメソッドの動作を変更する「オーバーライド」というテクニックを紹介します。
親クラスと継承先のメソッド名は同じですが、動作は異なることがわかります。
このように、同じメソッド名だけど、子クラスでメソッドを再定義することを「オーバーライド」と呼びます。

親クラスのメソッドを使いつつ、子クラスで動作を追加したい時もあるはずです。
その時には、「super」キーワードを使います。

まとめ

この記事では、クラスの継承やオーバーライドについて説明しました。
クラスの概念が曖昧な人は、この記事を読む前に、先にクラスの理解を深めた方がいいかもしれません。

Good luck for your engineer life!

この記事が面白かった人は、こちらの記事も読んでみて下さい。

Ruby初心者から抜け出したい人に、オススメの本です



Rubyをより詳しく勉強したい人には、この記事がオススメです

Rubyの学習でおすすめの本と動画【2024年最新】

▼ Ruby on Railsについては、この記事で紹介しています 目次1 動画教材2 初心者向け【入門編】3 中級者向け4 上級者向け 動画教材 "ちゃんと" Ruby を学ぼう! ー オブジェクト指向機能ってなんだ? ▼ 興味がある方は ...

続きを見る


Ruby on Railsをより詳しく勉強したい人には、この記事がオススメです

Ruby on Railsの学習でおすすめの本と動画【2024年最新】

目次1 動画教材2 初心者向け3 中級者向け 動画教材 Ruby Metaprogramming - Complete Course ▼ 興味がある方は、画像をクリック 英語版です。 Rubyのメタプログラミングについて学べます。 Ruby ...

続きを見る


Gitをより詳しく勉強したい人には、この記事がオススメです

Gitの学習でおすすめの本と動画【2024年最新】

目次1 動画教材2 漫画?でわかりやすく学ぶ入門書の定番3 初心者向け4 中級者向け5 上級者向け 動画教材 もう怖くないGit!チーム開発で必要なGitを完全マスター ▼ 興味がある方は、画像をクリック Gitの基本コマンド、ブランチやマ ...

続きを見る

-Ruby, プログラミング

Copyright© プログラミング道場 , 2024 All Rights Reserved Powered by AFFINGER4.