groovy是一个基于jvm的脚本语言,它大多数的地方和java非常类似,所以一般可以看成java的扩展
在jvm中我们有2中方式可以运行groovy
1: 使用groovyc编译所有的*.groovy为java的*.class文件,把这些*.class文件放在java类路径中,通过java类加载器来加载这些类
2: 通过groovy的类加载器在运行时直接加载*.groovy文件并且生成对象
因为groovy遵循class规范,所以groovy和java之间可以互相调用

gdk:groovy的类库
基本上是对JDK的一个扩展,在原来的基础上增加了一些脚本语言的特性,修改了一些不友好的方法名,增加了闭包等
与其它脚本语言的区别:
groovy在语法上是面向行的,但是在执行上却不是,groovy代码被完整的转换,通过转换器产生一个class文件
执行步骤:
假设我们有一个脚本:MyScript.groovy
1:MyScript.groovy被传递给groovy的转换器;
2: 转换器产生一个抽象语法树(AST)来表示在MyScript.groovy中的所有代码;
3:Groovy类生成器根据AST产生java字节码

本文介绍Groovy,一种基于JVM的脚本语言,它与Java高度相似,可视为Java的扩展。文章详细阐述了Groovy在JVM中的运行方式,包括编译和动态加载,并讨论了其与Java的互操作性、类库dKDK的增强以及与其它脚本语言的区别。执行流程从脚本编译到类文件生成直至动态加载进行了全面解析。
1199

被折叠的 条评论
为什么被折叠?



