我是靠谱客的博主 飞快太阳,这篇文章主要介绍Groovy基础知识——脚本必备,现在分享给大家,希望可以做个参考。

Groovy是用于Java虚拟机的一种敏捷动态语言,它是一种成熟的面向对象编程语言,既可以面向对象编程,也可以用作纯粹的脚本语言。使用该种语言不必编写过多的代码,同时,又具有闭包和动态语言中的其他特性。

Groovy与Java比较:

  • Groovy完全兼容Java的语法(最后都是编译成字节码文件)
  • 分号是可选的
  • 类、方法默认是public的
  • groovy编译器给属性自动添加getter/setter方法
  • 属性可以直接用点号获取
  • 最后一个表达式的值会被作为返回值(如果这是一个有返回值的方法,那么最后的return可以省略)
  • ==等同于equals(),不会有NullPointerExceptions

Groovy高效特性:

  • assert语句(在程序的任何地方都可以断言操作)
  • 可选类型定义(弱类型编程语言,def直接变量名即可)
  • 可选括号
  • 字符串:单引号/双引号/三引号
  • 集合API
  • 闭包

Groovy示例代码:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
public class ProjectVersion{ private int major; private int minor; ProjectVersion(int major, int minor) { this.major = major this.minor = minor } int getMajor() { major } void setMajor(int major) { this.major = major } } ProjectVersion v1 = new ProjectVersion(1,2); println v1.major ProjectVersion v2 = null println v1 == v2

Groovy基础知识演练:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
// 1.可选的类型定义 def version=1.0 // 2.assert assert version==1.0 // 输出true // 3.括号是可选的 println(version) println version // 4.字符串 def s1='groovy' // 仅仅是个字符串 def s2="gradle version is ${version}" // 可以插入变量 def s3='''This is groovy''' // 可以换行 // 5. 集合API --- List def buildTools=['ant','maven'] // 默认对应java类型是ArrayList buildTools << 'gradle' // 向集合中追加元素 assert buildTools.getClass() == ArrayList // true assert buildTools.size() == 3 // true // 5. 集合API --- Map def buildYears=['ant':2000,'maven':2004] // 默认对应java类型是LinkedHashMap buildYears.gradle = 2009 // 向Map中追加元素 println buildYears.ant // 通过key获取value println buildYears['gradle'] // 通过key获取value assert buildYears.getClass() == LinkedHashMap // true // 6.闭包 --- 简单的说闭包就是一个代码块,和一个方法一样,可以有参数,可以无参数; // 闭包可以赋值给一个变量 // 闭包也可以当一个参数传递给一个方法,像普通方法调用 // 闭包的使用方式有很多种 // 以下是在gradle中最常见的使用方式 def c1={ // 定义一个闭包 v -> println v; } def c2={ // 定义一个闭包 print "Hello" } // 定义一个方法(函数),一定不要导入Closure def method1(Closure closure) { closure ver='parameter' } // 定义一个方法(函数),一定不要导入Closure def method2(Closure closure){ closure() } method1(c1) // 执行结果:parameter c1 v:'java' method1(c1) // 执行结果:[v:java] method2(c2) // 执行结果:Hello

Gradle构建脚本示例:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// 这个一个构建脚本 // 每个构建脚本默认都有一个项目构建实例 // 这个脚本中默认的作用域就是这个project apply plugin:'java' // plugin:'java'是命名参数 version = '0.1' repositorys { // 方法 mavenCentral() // 闭包 } dependencies { // 方法 compil 'commons-code:commons-codec:1.6' // 闭包 }

最后

以上就是飞快太阳最近收集整理的关于Groovy基础知识——脚本必备的全部内容,更多相关Groovy基础知识——脚本必备内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(99)

评论列表共有 0 条评论

立即
投稿
返回
顶部