3、Groovy语言特性与优势详解

Groovy语言特性与优势详解

1. 构造函数

在Groovy类中,很少看到显式定义的构造函数。这是因为Groovy编译器会添加一个接受Map的构造函数,它会将Map中的键值对对应到类的字段上。这种方式提供了命名参数的构造函数语法,既方便又清晰地表明了各个值的含义。

例如,定义一个简单的 Person 类:

class Person {
    String firstName
    String initial
    String lastName
    Integer age
}

可以通过设置部分或全部字段值来构造对象:

def author = new Person(firstName: 'Hunter', initial: 's', lastName: 'Thompson')
def illustrator = new Person(firstName: 'Ralph', lastName: 'Steadman', age: 76)
def someoneElse = new Person()

在这些示例中,省略了Map的 [ ] 字符,使调用更加简洁。

对于有很多字段的类,这种方式特别有用。在Java中,要么定义多个不同签名的构造函数,要么在没有值的地方传递大量的 null

需要注意