技术开发 频道

Groovy 1.6的新特性

  @PackageScope

  Groovy对属性的约定是这样的:没有可视化修饰符(visibility modifier)修饰的任何属性都会暴露给外界,Groovy会自动生成getter和setter。例如,下面的Person类会为private name属性生成getter getName()及setter setName()这两个方法:

  class Person {

  String name

  }

  这等价于下面的Java类:

  public class Person {

  private String name;

  public String getName() { return name; }

  public void setName(name) { this.name = name; }

  }

  但这种方式有个弊端——无法为属性定义包范围的可视性,要想实现这一点,你可以用@PackageScope来注解属性。

1