什么是Groovy
Groovy 是基于Java虚拟机的一种敏捷的动态语言,它是一种成熟的OOP(面向对象)编程语言,既可以用于面向对象编程,又可以用作纯粹的脚本语言。使用该语言不必编写过多的代码,同时又具有闭包和动态语言的其他特性。
与java相比,Groovy的不同点或优势
- Groovy 完全兼容Java语法,可做脚本也可做类
- 分号是可选的,一般不加分号,以换行作为结束
- 类、方法、字段都是公共的,没有访问权限限制
- 默认生成具名(名值对)参数构造器 key:value
- 字段不定义访问权限时,编译器自动给字段添加getter/setter方法
- 字段可使用点来获取,无访问权限的也可以使用getter/setter方法操作
- 方法可省略return关键字,自动检索随后一行的结果作为返回值
- 空值比较不会有NullPointerException异常抛出
Groovy的高级特性
assert断言: 可以用assert代替之前java的断言语句
可选类型: 可以使用类javascript的弱类型,可以使用def来表示任意类型,类似js中的var
方法调用: 调用带参数方法时可省略括号
字符串定义: 字符串定义有三种方式,单引号,双引号,三个单引号
集合API: 集合的定义和使用更加简单,API和Java有所不同,但是兼容Java API
闭包: Groovy的一大特性,跟方法类似的代码块,可赋给一个变量也可作为一个参数传给一个方法,像普通方法一样调用