Rubyのクラスとモジュールについてざっくりとまとめる

どうも、Rubyをやっているものです。突然ですが、Rubyにおけるクラスとかモジュールとかって、いまいちよくわからなくないですか?

そこで今回はRubyのクラスとモジュールについてざっくりとまとめておきたいと思います。

Rubyのクラスとモジュールについてざっくりとまとめる

クラスとインスタンス

クラスとインスタンスは以下のようなものです。

そうです。鯛焼きです。

この鯛焼きの型、これこそがクラスです。そしてそれによっていくつも作り出される鯛焼き。これがインスタンスです。なんてわかりやすいんでしょうか。

つまりこれからはクラスが出たら鯛焼き型、そしてインスタンスは鯛焼きと覚えてください。

クラスの継承について

すでに定義されているクラスを拡張して、新しいクラスを作ることです。なぜこのような機能があるかというと、いちいち1からクラスを作っていたら同じ部分などが多くなってしまって、冗長になってしまうからです。

例えば鯛焼きの中身をあんこから、クリームに変えようと思ったとします。当然同じ鯛焼き型を使いますよね、ただ、中身をあんこからクリームにかえるだけです。これがクラスの継承です。

鯛焼き型は一緒のものを使って、中身だけちょっと違うものを作る。これです。

クラスを作る方法

クラスを作る方法は以下のような定形文があります。

コード

class クラス名
 クラスの定義
end

ちなみにクラス名は大文字からはじめないとエラーになります。

モジュールについて

モジュールは簡単にいうと「いろいろなところの共通処理をまとめる」という機能を持っています。

モジュールはクラスと以下の点で違います。

  • インスタンスを生成できない
  • 継承できない

Mix-inによる機能の提供

モジュールを使う基準ですが、ざっくりと以下のような考え方があります。

  • 2つのクラスは似たような機能を持っているだけで、同じクラスとは考えたくない場合
  • すでにクラス継承をしていて、うまく共通の機能を追加できない場合

モジュールの作り方

コード

module モジュール名
 モジュールの定義
end

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA