Ruby 練習問題集 モジュールとクラス(1)

モジュールとクラス(1) - Ruby 練習問題集 - Ruby on Rails with OIAX

次の内容を持つファイル mod.rb がカレントディレクトリに存在します。

module Mod
  def foo
    "Foo" + bar
  end

  private
  def bar
    "Bar"
  end
end
Mod モジュールを利用して、クラスメソッド foo を持つクラス Klass を定義しなさい。

クラス Klass の利用例は次の通りです。

puts Klass.foo
結果として、端末に FooBar と出力されます。

とりあえずirb

してみるも、、

require 'mod'
class Klass
  include Mod
end

moduleだからincludeと思ったが
見当違いだった。

Klass.foo
NoMethodError: undefined method `foo' for Klass:Class
from (irb):5

「クラスメソッド」とはクラスの特異メソッドのことなのです!

なるほど。
extendもしらなかったし、classを定義した上でクラスメソッドを定義すると。