読者です 読者をやめる 読者になる 読者になる

GroovyObjectSupportを読んでみた

Groovy

GroovyObjectSupport (Groovy 2.2.1)

コンストラクタ内でInvokerHelper#getMetaClass をコールしてフィールドのmetaClassを初期化しています。


get/setPropertyはフィールドのmetaClassを介して呼んでいて、metaClass自体はget/setMetaClassで取得/変更が出来るけど、metaClassがnullの場合はInvokerHelper#getMetaClassで再度初期化してからreturnしています。


invokeMethodもこのmetaClassに対して
getMetaClass().invokeMethod(this, name, args); // nameはString、argsはObject[]
とコールしています。


プログラミングGROOVY

プログラミングGROOVY

広告を非表示にする