LoginSignup
0
1

More than 3 years have passed since last update.

Rubyにおけるクラスとインスタンスの違いについて

Last updated at Posted at 2020-06-27

はじめに

Rubyを学習していて出てくる、
クラスとインスタンスの概念。

初学時にどういう意味かさっぱりわからなかったので、
例を挙げながら書いていきます。

クラスとは

値(データ)に持たせたい、共通の属性と処理に関するルールを決めるための雛形。
実体を持たないので、クラスだけではデータを動かせません。

例) 車でいうと「設計図」にあたる。
   設計図は、色や形(共通の属性)をどうするかとか、
   走る、止まる、ウィンカーを出すなど(共通の処理)をどうするか、
   などが書かれた紙。
   あくまで設計図なので、車(インスタンス)がないと動かない。

# クラスの定義(大文字で始める)
class Car

end

インスタンスとは

クラスを元にして作られるデータのこと。
実体を持っており、クラスで定義した共通の属性と処理を持っています。

例) 車でいうと「車」にあたる。
   車は、色や形(共通の属性)を持っていて、
   走る、止まる、ウィンカーを出すなど(共通の処理)ができる。
   設計図から作られた車そのものなので、実体もあるし、もちろん動く。

# インスタンスの生成
class Car

end

taxi = Car.new  # newメソッドでCarクラスのインスタンスを生成して、変数taxiに代入
puts taxi  # インスタンスを出力
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1