代码改变世界

Groovy动态语言简介

2011-04-03 11:50  会被淹死的鱼  阅读(1087)  评论(0编辑  收藏  举报

Groovy是基于JVM的通用编程语言。James Strachan和Bob McWhirter在2003年创建了Groovy项目,其目的是为了轻松地整合也已存在的各种框架和组件。Groovy不仅将Ruby、Lisp和Python等语言的丰富表达性带到了Java平台,同时还保持了对Java的友好性。

Groovy与Java的相同点,可以把Groovy看作是Java语言的一个超集,以下这些特性直接来自于java

  • 关键字和语句
  • try/catch/finally的异常处理
  • 类、接口、属性、方法的定义
  • 用new来实例化对象
  • 包和导入机制
  • 运算符、表达式和赋值
  • 控制结构(if、loop等)
  • 代码注释

更重要的是Groovy和Java共享相同的对象和运行模型,即它们在JVM上的操作是一视同仁的。所以Groovy不是解释类型的语言,不管是脚本代码还是完整的类,都会先编译成字节码然后再执行。

Groovy也引入了一些新的特性,能让Java程序员轻松解决日常工作的繁琐步骤。

  • 闭包(closures):可以简单认为是具有不同作用域的匿名代码块
  • GString,正则表达式,模版生成
  • 真正的面向对象,包括自动装箱(autoboxing)和拆箱(unboxing)
  • 操作符重载,更容易访问已有Java类的语法结构
  • 改进了在现有数据类型上增加新类型的语法
  • 扩展了现有Java类的方法
Groovy是一门强大的脚本语言,可以让Java程序员摆脱许多繁琐的日常工作,学习起来也很简单,可以很快体验到脚本语言的强大。