Groovy列出类的所有属性

Groovy列出类的所有属性,第1张

概述我正在尝试使用Groovy列出属性(即具有getter方法的所有属性).我可以使用myObj.properties.each {k,v – > println v},这很好.但是,它也会打印整个超类层次结构.如果我只想列出当前类(而不是超类)的属性,那可能吗? 这是我破解的一种方式,但也许你可以在它上面构建. class Abc { def a def b}class X 我正在尝试使用Groovy列出属性(即具有getter方法的所有属性).我可以使用myObj.propertIEs.each {k,v – > println v},这很好.但是,它也会打印整个超类层次结构.如果我只想列出当前类(而不是超类)的属性,那可能吗?解决方法 这是我破解的一种方式,但也许你可以在它上面构建.

class Abc {    def a    def b}class Xyz extends Abc {    def c    def d}def xyz = new Xyz(c:1,d:2)xyz.MetaClass.methods.findAll{it.declaringClass.name == xyz.class.name}.each {     if(it.name.startsWith("get"))  {        println  xyz.MetaClass.invokeMethod(xyz.class,xyz,it.name,null,false,true)    }}
总结

以上是内存溢出为你收集整理的Groovy列出类的所有属性全部内容,希望文章能够帮你解决Groovy列出类的所有属性所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1231521.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存