反射 – 在字段之前的Groovy @符号
发布时间:2020-12-14 16:38:34 所属栏目:大数据 来源:网络整理
导读:在Groovy中的字段名称之前,是什么意思?对于某些类,我可以访问不可直接访问的私有字段,我们以 ComposedClosure为例: public class Person { private String name}def u = new Person(name:"Ron")println u.@name //Ronprintln u.name //Rona = {2} {3}pr
在Groovy中的字段名称之前,是什么意思?对于某些类,我可以访问不可直接访问的私有字段,我们以
ComposedClosure为例:
public class Person { private String name } def u = new Person(name:"Ron") println u.@name //Ron println u.name //Ron a = {2} >> {3} println a.@first //first closure object println a.first //runtime error 解决方法
它允许您覆盖groovy对属性访问器的使用。如果你写:
println u.name groovy将调用自动生成的getter Person.getName()。如果你写: println u.@name 它会像Java一样直接进入该领域。在关闭的情况下,它似乎有一个第一个字段,但不是相应的getFirst存取器。 在groovy手册中,它被记录为direct field access operator。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |