文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
7. Getter 与 Setter
Groovy 中的 getter 与 setter 构成了我们称之为 “属性”(property)的形式,从而为访问这种属性提供了一种快捷标记。因此,我们完全可以舍弃 Java 式的调用方法,而采用字段样式的访问标记:
resourceGroup.getResourcePrototype().getName() == SERVER_TYPE_NAME
resourceGroup.resourcePrototype.name == SERVER_TYPE_NAME
resourcePrototype.setName("something")
resourcePrototype.name = "something"
用 Groovy 编写 bean 时,通常会调用 POGO(普通 Groovy 对象),不必自己创建字段和 getter/setter,只需把这些活儿留给 Groovy 编译器即可:
与其像下面这样:
class Person {
private String name
String getName() { return name }
void setName(String name) { this.name = name }
}
不如这样写,简单明快:
class Person {
String name
}
如你所见,实际上,没有任何修饰符的独立“字段”导致 Groovy 编译器为你生成了一个私有字段和 getter 及 setter。
在使用这样来自 Java 的 POGO 时,getter 与 setter 确实存在,当然可以像通常那样使用。
虽然编译器创建了常见的 getter 和 setter 逻辑,但如果你希望在这些 getter/setter 中实现不同或者更多的逻辑,完全可以添加进去,编译器自会用你提供的逻辑来代替默认生成的逻辑。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论