groovy MetaClass 剖析 1
<!----><!---->本篇介绍groovy 的MetaClasses ,MetaClass 是Groovy 动态编程比较重要的组成。
(以下出现的代码片段是在groovy1.5.3测试通过,希望各位可以运行之)。
1.MetaClass
groovy中出现的每个类都有其对应的MetaClass。MetaClas是一个接口,该接口扩展了MetaObjectProtocol接口,这就是我们通常所说的MOP协议了。
MetaClass的实现类主要有
http://www.agoit.com/bbs/../../../upload/picture/pic/17445/6c3caa48-8d6c-31c4-b19a-3164052c9d00.jpg
MetaClassImpl 是通用的实现类。ClosureMetaClass是闭包类特有的MetaClass。ExpandoMetaClass是用户扩展groovy类行为时用到的MetaClass
println 'first:---> '+'test'.metaClassprintln 'String.metaClass:---> '+String.metaClassprintln 'after String.metaClass:--->'+'test'.metaClass
<div class="quote_title"> 执行结果为
页:
[1]