0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Ruby言語によるクラスの定義とクラスメソッドの定義及びクラスメソッドの呼び出し

0
Last updated at Posted at 2019-09-24

学習

ここのところ、毎日少しでも時間があればruby言語の基礎の復習をやりアウトプットのつもりで
ここに投稿させていただいてます。
今日はRuby言語による、クラスの定義とクラスメソッドの定義、クラスメソッドの呼び出しを軽くおさらいする為に載せておくことにします。

クラスの定義

sample_calss.rb
class Review

end

これで最もシンプルなクラスの定義ができる

インスタンスの生成

  • newメソッド
sample_calss.rb
class Review

end
review = Review.new # Reviewクラスのインスタンスを生成
puts review

ターミナルからruby sample_class.rbと実行すると

result
# <Review:0x00XXXXXXXXXX>

とReviewクラスのインスタンスの生成に成功していることがわかる。

クラスメソッド

  • クラスメソッドの定義

クラスメソッドはメソッド名の前にself.を付ける

classMethod.rb
class クラス名
  def self.メソッド名
    # 処理
  end
end
  • 呼び出し

クラス名に続けてメソッド名を書く。引数は()のなかに入れる。これは普通のメソッドと同様。

クラス名.メソッド名(引数)
  • 代表的なクラスメソッドはnewメソッドがある。
sample.rb
user = User.new # newメソッド

Reviewクラスにクラスメソッドget_review_countを定義してみる。

sampl_class.rb
class Review
  def self.get_review_count
    return 0
  end
end

review = Review.new # Reviewクラスのインスタンスを生成
puts review

puts Review.get_review_count # get_review_countの呼び出し

最後にクラスメソッドget_review_countを呼び出しているので0を返す。

まとめ

クラスメソッドはクラスが使用できるメソッドであり、クラスメソッドを定義したクラス自身が使用できる。
クラスで共通の情報を使った処理に使用される。

0
0
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
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?