一些 groovy 代码(不是所有)太像 java 了,这经常给人的感觉就是:groovy 的语法是 java 语法的超集。尽管相似,但 groovy 的语法不是 java 语法的超集。
例如,groovy 现在不支持 java 经典的 for(init;test;inc)循环。你在 2.1 章将看到,两种语言会有稍微的不同(例如,==操作符)。
除了这些细微的差别,许多主要 java 语法也是 groovy 语法的一部分,包括:
相同的包处理机制(包括包的声明和 import 语句)
类和方法的定义(嵌套类除外)
控制结构语句【for(init;test;inc )循环除外】
操作符、表达式和赋值
异常处理
变量声明(也有一些不同)
对象实例化,引用和取消引用对象,方法调用
Groovy 语法增加的部分:
通过新的表达式和操作符访问 java 对象
多种途径声明对象
提供新的控制结构来进行流程控制
引入新的数据类型和相应的操作符与表达式
把所有事物都看成对象来处理
大体上来说,groovy 可以看成是 java 和这些附加功能的和,这些附加的语法元素确保代码更紧凑更易读,一个有趣的方面是 groovy 的加法运算能应用到前面没有提到的对象上。