Pythonだとエラーになるが...
class D:
def x(self):
return "x"
class D:
def y(self):
return "y"
obj = D()
print obj.x()
print obj.y()
Rubyでは既存のクラスを再オープンして、メソッドを追加する。
class D
def x
"x"
end
end
class D
def y
"y"
end
end
obj = D.new
puts obj.x
puts obj.y
Ruby のclassキーワードは、クラス宣言と言うよりもスコープ演算子のようなものである。
(『メタプログラミングRuby』 1.2.1 クラス定義の中身)