Groovy是什么意思

Fanly 问答 2019-08-02 15:19:28 阅读(...)

Groovy 是一种基于 JVM(Java 虚拟机)的敏捷开发语言,Groovy 动态语言拥有类似 Python、Ruby 和 Smalltalk 中的一些特性,可以作为 Java 平台的脚本语言使用。

Groovy 是一种基于 JVMJava 虚拟机)的敏捷开发语言,Groovy 动态语言拥有类似 Python、Ruby 和 Smalltalk 中的一些特性,可以作为 Java 平台的脚本语言使用,Groovy 代码动态地编译成运行于 Java 虚拟机上的 Java 字节码,并与其他 Java 代码和库进行互操作。

Groovy

Groovy 由于其运行在 JVM 上的特性,Groovy 可以使用其他 Java 语言编写的库。Groovy 的语法与 Java 非常相似,大多数 Java 代码也符合 Groovy 的语法规则,尽管可能语义不同。 Groovy 1.0 于 2007 年 1 月 2 日发布,并于 2012 年 7 月发布了 Groovy 2.0。从版本 2 开始,Groovy 也可以静态编译,提供类型推论和 Java 相近的性能。Groovy 2.4 是 Pivotal 软件赞助的最后一个主要版本,截止于 2015 年 3 月。Groovy 已经将其治理结构更改为 Apache 软件基金会的项目管理委员会(PMC)。

Groovy 特性

大部分有效的 Java 文件也是有效的 Groovy 文件。Groovy 代码可以比 Java 代码更加紧凑,因为它不需要 Java 需要的所有元素。这两种语言的相似性,让 Java 程序员可以先从熟悉的 Java 语法开始逐步学习 Groovy。 Groovy 特性包括了 Java 中不支持的静态和动态类型(使用关键字 def),运算符重载,提供了 lists(列表)和关联数组(maps)提供了原生语法,原生支持正则表达式,多态迭代,字符串内嵌表达式,添加帮助方法以及 Null 条件运算符,自动空指针检查(列:variable?.method(),或 variable?.field)。

从 Groovy 2 开始,支持模块化(能只根据项目需要添加所需的 jar 包,从而减少 Groovy 库的大小),使用 JDK7 的类型检查,静态编译,Project Coin 语法增强,多块模块和持续的性能增强 调用动态指令。

Groovy 通过内联文档对象模型(DOM)语法对各种标记语言(如 XML 和 HTML)的提供原生支持。该功能实现了使用统一简洁的语法和编程方法来定义和操纵许多类型的异构数据资源。

与 Java 不同的是,Groovy 源代码文件可以作为(未编译的)脚本执行,如果它含有任何类定义之外的代码,或者它是具有 main 方法的类,或者它是 Runnable 或 GroovyTestCase。 Groovy 脚本在执行之前完成解析,编译和生成(类似于 Perl 和 Ruby)。这发生在下一个层次,编译后的版本不会保存为进程的组件

收藏 0个人收藏
走进科技生活方式

评论交流

泪雪默认头像 请「登录」后参与评论
  1. 加载中..

相关推荐

  • Zuul

    Zuul是什么

    Zuul 是 Netflix 开源的一个网关组件 API Gateway 服务器,在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架。Zuul 相当于是设备和 Netflix 流应用的 Web 网站后端所有请求的前门。
  • Spring Framework

    Spring Framework是什么

    Spring框架是Java平台的开源的全栈应用程序框架和控制反转容器实现,一般被直接称为Spring。框架的一些核心功能理论上可用于任何Java应用,但Spring还为基于Java企业版平台构建的Web应用提供了大量的拓展支持。
  • Elasticsearch

    Elasticsearch 是什么

    Elasticsearch是一个基于Lucene库的搜索引擎。提供分布式、支持多租户的全文搜索引擎,具有HTTP Web接口和无模式JSON文档。Elasticsearch是用Java开发的,并在Apache许可证下作为开源软件发布。
  • Sublime Text

    Sublime Text是什么

    Sublime Text是一套跨平台的文本编辑器,支持基于Python的插件。Sublime Text是专有软件,可透过包扩展。大多数的包使用自由软件授权发布,并由社群建置维护。
  • Gradle

    Gradle是什么语言

    Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具。基于Groovy的特定领域语言来声明项目设置,而不是传统的XML。 当前支持语言限于Java、Groovy和Scala,未来将支持更多语言。
  • Kotlin

    Kotlin是什么

    Kotlin是一种在Java虚拟机上运行的静态类型编程语言,它也可以被编译成为JavaScript源代码。它主要是由俄罗斯圣彼得堡的JetBrains开发团队所发展出来的编程语言,其名称来自于圣彼得堡附近的科特林岛。