>>460
Classクラスのprivateメソッドにinheritedというのがある。
こいつはなにかというと、サブクラスが定義されたときに、
そのサブクラスを引数に呼び出されるものだ。

それで実験してみた。

class Super
  def Super.inherited(subclass)
    p subclass.instance_methods
  end # def
end # class

class Sub < Super
  def foo
  end # def
end # class

実行結果は
[]
だった。ダメじゃん…
instance_methodsが取れれば(結果が["foo"]だったら)、
かっこよさげな方法でチェックできたのに。
このフックってサブクラスが生成されたよ、名前はこうだよ、
くらいの情報しかないみたいだ。

実行速度が遅くなってもよいのなら、Superのinitializeメソッドのなかで
instance_methodsを取って比べるというのでもチェックは可能だけど、
Subオブジェクトが生成されるたびにチェックするんで、
そんなアホなことはしないほうがいいだろう。

以上、役立たずでした。