为什么学groovy

  • 其实就是因为gradle要用
  • 哎,就是这么功利,如果gradle不用就不管他了

groovy印象

  • 就是一个运行在jvm的脚本语言
  • 语法跟java差别还是有的,总而言之,简便很多。

参考文档

  • 极客时间groovy语法入门
    • 很简短,很简洁
    • 很适合一上来就看
    • 当然,你还需要找一个教程去搭建个环境试试
  • Groovy从入门到精通
    • 这篇文章讲得是真的非常细,看完基本就真的是精通了
    • 不过不建议一上来就看这篇文档,先大概了解groovy的大概内容

自己觉得需要注意的点

  • 每个句子不需要“;”默认换行就是分隔
  • 一个groovy文件,默认是会引入很多包的
  • 对于groovy的list,map声明 && 文件的操作 还是需要了解一下,可能会经常用到
  • 对于一个groovy文件,可以声明多个公共类,声明的类默认都是公共类,哈哈哈
  • 对于没有类包起来的代码,那么他就会被立马执行(跟js挺相似的)
  • 这里的方法相当于一个对象(叫做闭包Closure)
  • 一个方法(闭包)没有return语句,默认返回最后一句的执行结果

来个实例文件 test.groovy

class Book {
    String title
}
class Good{
    String name
    Closure closure = {
        println 'i am closure'
    }
}

Book.metaClass.author = "Stephen King"
def b = new Book()

def goodDemo = new Good()
goodDemo.name = 'asdfkjasf'
goodDemo.closure()

assert "Stephen King" == b.author
println goodDemo.name
println 'asdkfjakdfj'