Rubyの実装に疑問あり!
■ このスレッドは過去ログ倉庫に格納されています
0223デフォルトの名無しさん
NGNGUML でのメタクラスだが考え方は同じ。
http://www.asahi-net.or.jp/~dp8t-asm/java/tips/UMLClassDiagramMetaClass.html
class Foo
@@baz = nil
attr_accessor :foo
def Foo.baz; end
def foo; end
end
例えば上のクラス Foo には
クラス変数 baz、クラスメソッド baz、インスタンス変数 foo、メソッド foo などがある。
が、特定のあるクラスではなく、「クラス」そのものはどう表現すればいいのか。
その答えがメタクラス。
この考えではメタクラスのインスタンスがクラスとなる。
メタクラスでは、クラス変数が定義できる、
インスタンスメソッドが定義できる、などが定義される(これは概念上ね)。
■ このスレッドは過去ログ倉庫に格納されています