attributesetexpressionbug.groovy

来自「Groovy动态语言 运行在JVM中的动态语言 可以方便的处理业务逻辑变化大的业」· GROOVY 代码 · 共 29 行

GROOVY
29
字号
/**
 * @author Pilho Kim
 * @version $Revision: 4287 $
 */

package groovy.bugs

class AttributeSetExpressionBug extends GroovyTestCase {
    void testAttributeSetAccess() {
        def a = new HasStaticFieldSomeClass()
        a.name = a.name * 3
        assert a.@name == "gettter" * 3 
        assert a.name == "gettter"

        new HasStaticFieldSomeClass().@name = "changed bar"
        assert( HasStaticFieldSomeClass.class.@name == "changed bar" )

        HasStaticFieldSomeClass.class.@name = "changed static bar"
        assert( HasStaticFieldSomeClass.class.@name == "changed static bar" )
    }
}

class HasStaticFieldSomeClass {
    public static String name = "bar" 
    static String getName() {
        return "gettter"
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?