代码之家  ›  专栏  ›  技术社区  ›  Joel

如何在Groovy类中“隐藏”元类属性

  •  3
  • Joel  · 技术社区  · 15 年前

    我正在创建一些简单的groovy类,例如。

    class Person {
        int age
        String name
    }
    

    在依赖反射来提取对象属性(如a g e和name)的Java方法中使用的。问题是元类也显示为属性。更新Java方法以忽略此属性不是一个选项。我试过将元类属性设置为空,但这不起作用。

    2 回复  |  直到 13 年前
        1
  •  1
  •   Shawn Vader    13 年前

    如果您使用的是Java和Groovy中的这些类,为什么不直接用Java而不是Groovy创建POJO呢。 我知道这并不能回答您的问题,但是很高兴知道为什么决定在pojo中使用Groovy

        2
  •  0
  •   allthenutsandbolts    13 年前

    在创建期间为Groovy类注入元类。我想你不能把它设为空。您调用的setMetaClass方法只将您在类上设置的任何自定义元类设置为Null,而不是在构造期间注入的元类。