Groovy用户指南(4)

类别:Java 点击:0 评论:0 推荐:

4、与Java的不同

1)通用

l         在Groovy中,==等价于equals(),===意味着标识比较(等同Java中的==)

l         在Java中==意味着原类型的相等和对象的标识比较,如a==b(a和b是指向相同对象的引用)

l         传递闭包给方法或使用GroovyMarkup时,{要和方法的调用在同一行上,如:

[1, 2, 3].each { println it }

l         如果要将{放在独立于方法的一行上,要使用括号()

[1, 2, 3].each (

  { println it }

)

l         下面的写法是无效的,会将闭包解释成独立的闭包,而不会将闭包作为方法的参数传递

[1, 2, 3].each

{

       println it

}

2)应该意识到的事情

l         语句后面的分号是可选的,但在同一行上有多个语句需要用分号分隔

l         return关键字可选

l         可以在static方法内使用_this_关键字(何用?)

l         缺省的修饰符是public

l         Groovy中的protected等价包的protected和Java的protected

l         补充:方法调用时,括号是可选的

3)在Java中无效的Groovy新特性

l         闭包

l         List和Map的本地语法

l         GroovyMarkup和Gpath的支持

l         正则表达式的本地支持

l         多形式的iteration和强大的switch语句

l         动态和静态类型的支持

l         在字符串中嵌入表达式

l         增加了许多新的帮助方法

l         在属性和添加事件侦听方面,简化了编写bean的语法

本文地址:http://com.8s8s.com/it/it15311.htm