[ruby-list:50865] __id__ メソッドでの super について

From: Akret Node <node.akret@...>
Date: 2019-12-31 18:10:32 UTC
List: ruby-list #50865
のぐちです。

あけましておめでとうございます。

class BasicObject
  def self.__id__
    super
  end
end

p BasicObject.__id__ #=> 47444468263960

BasicObject には親クラスがないはずですが self.__id__ の中で super
を読んでみると正しくオブジェクトIDが取得できているようです。これはどのような理屈で取得できているのでしょうか?

親クラスに同名のメソッドがなければ、「no superclass method `xxx' for 'yyy'」と例外になるはずですが、上記ではなりません。。。

In This Thread

Prev Next