gradle 学习笔记(一)

gradle 学习笔记(一)


1、gradle 是什么?

     gradle是一个开源的项目自动化构建工具,建立在Apach Ant 和Apache Maven的概念基础之上,并基于Groovy语言,而不再使用XML形式管理构建脚本。用一张图来表示Ant、Maven、Gradle之间的关系:
这里写图片描述


2、groovy是什么?

    groovy是基于java虚拟机的一种敏捷的动态语言,他是一种成熟的面相对象的语言,既可以用于面相对象编程,又可以用作纯粹的脚本语言。使用该语言不需要过多的代码,同时又具备闭包和动态语言的其他特性.

2.1、与java比较

  • groovy 完全兼容java的语法
  • 末尾的分号时可选的
  • 类 方法默认是public(java 的类和方法默认是friendly)
  • 编译器给属性自动添加getter和setter方法
  • 属性可以直接用点号取
  • 最后一个表达式的值会作为返回值
  • ==等同于equals()方法,不会出现NullPointerException异常

2.2 高效的Groovy特性

  • assert 语句
  • 可选类型定义
  • 可选的括号
  • 字符串

    2.2.1 assert 语句

    即 :

    assert version == 2

    用来判断判断表达式的正确性,如何正确,程序接着执行,不做任何输出,如果表达式错误,会抛出assert exception,并且程序在断言处终止执行。

    2.2.2 可变的类型定义

    例如:

    def version = 1

    则编译器会自动推断出version 的类型是int类型

    2.2.3 可选的括号

    例如:

    println version
    2.2.4 字符串

    例如:

    def s1 = 'dfafafa'
    det s2 = "dfda ${version}"
    def s3 = '''dafa
    dfafas'''

    其中单引号代表普通的字符串,双引号总的字符串可以添加对变量的引用,三引号中的字符串可以换行。

    2.2.5 集合API
    def list = ['sdaf','daf','dafa'];
    list << 'dsaf' // 往list里边追加数据

    groovy 这种写法不难理解是ArrayList的。
    “`
    def map = [‘ant’:2000, ‘maven’: 2004];
    map.gradle = 2009
    println map.gradle
    println map[‘gradle’]
    这里的map默认类型是LinkedHashMap

    2.2.6 闭包
def static method1(Closure closure) {
        closure()
}
def static method2(Closure closure) {
        closure("hello");
}
public static void main(String[] args) {
        def c1 = {
            v ->
                println(v)
        }
        def c2 = {
            println("world")
        }
        method2(c1);
        method1(c2)

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值