阅读更多

6顶
1踩

编程语言

原创新闻 Groovy 2.3 发布,支持 JDK8

2014-05-06 15:31 by 副主编 wangguo 评论(2) 有9262人浏览
Groovy开发团队今天发布了Groovy 2.3正式版本。



Groovy是一个基于 Java虚拟机(JVM)的敏捷动态语言,它构建在强大的Java语言之上,同时引入闭包和元编程等出色的新功能,并添加了Python、Ruby和Smalltalk等语言中的诸多特征。Groovy无缝集成所有已经存在的 Java对象和类库,可以直接编译成Java字节码,这样可以在任何使用Java的地方使用Groovy。

新版本中的主要改进包括:

  • 支持运行在JDK8平台
  • traits:一种新的面向对象方式
  • 改善了AST转换,比如 @TailRecursive、@Builder和@Sortable
  • 一个新的NIO2模块,支持Path
  • JSON解析和构建现在更快
  • 闭包参数类型推断
  • 一个新的标记模板引擎
  • Groovysh和GroovyConsole更易用
  • 新的GroovyAssert测试工具
下载地址http://groovy.codehaus.org/Download

6
1
评论 共 2 条 请登录后发表评论
2 楼 vcok 2014-05-08 20:36
编写小工具的利器
1 楼 fantasy86 2014-05-06 20:55
支持Groovy

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • C++template元编程学习心得-switch结构

    自己看modern c++ design的时候的一点心得和总结的啦,主要就是关于template元编程的写法的

  • ::template的用法

    ::template的用法

  • C++编程语言中模板(template)介绍

    本文主要介绍 C++ 编程语言中模板(template)的相关知识,同时通过示例代码介绍模板的使用方法。 1 概述 1.1What 泛型编程是一种代码编写方式,通过使用泛型编程,可以编写出独立于任何特定类型的代码。 模板是泛型编程的基础,是创建泛型函数或类的蓝图(公式)。 C++ 的 STL 容器及其迭代器和算法,都是泛型编程的例子,它们都使用了模板的概念。每个容器都有一个单一的定义,比如 vector,我们可以定义许多包含不同类型元素的 vector,比如:vector <int>.

  • C++使用模板类实现任意类型switch和变量case

    2019独角兽企业重金招聘Python工程师标准>>> ...

  • template的用法(超详细)

    假如我们有以下函数 int compare(const string &v1,const string &v2) { if(v1<v2)return -1; if(v1>v2)return 1; return 0; } 这个函数比较两个值并指出两个值的大于,小于或者等于关系。 1.函数模板 1. template<typename T> int compare(const T&v1,const T&v2) {

  • C++(17):模板嵌套类的.template及::template

    告诉编译器后面的符号是一个嵌套类模板。告诉编译器后面的符号是一个模板成员。对象.template。类::template。

  • C++ 认识模板(template)元编程

    20180408 C++ 认识模板(template)元编程模板元编程(template metaprogram)是以C++写成,执行于C++编译器内的程序。模板元编程(TMP)是被发现而不是被发明出来的。TMP的特点:由于TMP执行于C++编译期,因此可将工作从运行期转移到编译期,这导致的结果是,某些错误原本通常在运行期才能侦测到,现在可在编译期找到。另外使用TMP的C++程序可能在每一方面都更...

  • c++模板元编程五:switch/case语句编译时运行

    2.4 switch/case 替代现在模拟switch/case语句,不过也是在编译期运行。先看调用代码和输出结果// test case cout << "test case" << endl; Case::Run(); test case case 2 实现代码很简单,还是模板特化template class Case { public: static inline void Run()

  • C++ Template 技巧 (一)

    文章目录一、基于Policy的class设计1. C++常用的解决问题的方法2. 程序的要求3. 解决方法4. 例子(1) 接口组成:(2) 使用方面(3) 例子(4) 上述代码分析1) policies接口和classes接口2) 模板模板参数(template template 参数)5. policy的优势6. 和虚函数的区别7. 模板成员函数8. Policy Classes的析构函数9. 通过不完全具现化获取选择机能 一、基于Policy的class设计 1. C++常用的解决问题的方法 Ob

  • Using C++ template metaprograms

    Template MetaprogramsTodd VeldhuizenIntroductionCompile-time programsThe introduction of templates to C++ added a facility whereby the compiler can act as an interpreter. This makes it pos

  • C++ 类模板(template)详解

    1.类模板的使用 1.1为什么需要类模板 类模板与函数模板的定义和使用类似,有时,有两个或多个类,其功能是相同的,仅仅是数据类型不同,我们可以通过如下面语句声明了一个类模板: template &lt;typename T&gt; class A { public: A(T t){ this-&gt;t = t; } T&amp; getT(){ return t; } public: T t; }; 1.2类模板定义 类模板由模板说明和类说明构成 模板说...

  • C++ 模板特化与偏特化

    文章目录1.模板特化1.1 概述1.2 函数模板特化1.3 类模板特化2.模板偏特化2.1 概述2.2 函数模板偏特化2.3 类模板偏特化3.模板类调用优先级参考文献 1.模板特化 1.1 概述 模板特化(template specialization)不同于模板的实例化,模板参数在某种特定类型下的具体实现称为模板特化。模板特化有时也称之为模板的具体化,分别有函数模板特化和类模板特化。 1.2 函数模板特化 函数模板特化指函数模板在模板参数为特定类型下的特定实现。查看以下示例: #include &lt;i

  • 模板方法模式(Template Method)

    14、模板方法模式(Template Method) 解释一下模板方法模式,就是指:一个抽象类中,有一个主方法,再定义1…n个方法,可以是抽象的,也可以是实际的方法,定义一个类,继承该抽象类,重写抽象方法,通过调用抽象类,实现对子类的调用,先看个关系图: 就是在AbstractCalculator类中定义一个主方法calculate,calculate()调用spilt()等,Plus和M...

  • c++中的template理解

    有必要记一下这种一眼看上去就很高级的用法。还是编程不够多。都没用过这个。 相信用过c++的人,即便没用过,也肯定都听说过模板类这个词。嗨不巧了,今天讲的就是模板类。 模板是c++支持参数化多态的工具,使用模板可以使用户为类或者函数声明一种一般模式,使得类中的某些数据成员或者成员函数的参数、返回值取得任意类型。因此可以说,模板是一种对类型进行参数化的工具。 template&lt;class ...

  • 关于template标签用法总结(含vue中的用法总结)

    文章目录html5中的template标签template标签操作的属性和方法vue中的template html5中的template标签 html中的template标签中的内容在页面中不会显示。但是在后台查看页面DOM结构存在template标签。这是因为template标签天生不可见,它设置了display:none;属性。 &lt;!--当前页面只显示"我是自定义表现abc"这个内容,不...

  • 关于C++的模板操作

    看了一篇关于模板的文章, 写的不错, 只是在编译的时候有点小问题做了修改, 添加了一些补充性的概念, 以便方便我更加理解模板的概念,感谢原作者提供的好文章, 原文地址:http://prglab.com/cms/pages/c-tutorial/advanced-concepts/templates.php辅助文章可以参考:http://www.kuqin.com/language/20090405/44193.html何时需要模板:我的理解是(不知道对不对) 一般需要函数通用或者类通用的时候需要模板, 还

  • C++Template 模版的本质

    C++ Template 模版的本质 自动化是人类进化的动力 AlexCool 本文出现的目的,就是尽量让人们理解C++模版设计的思想, 属于模板的心法。我想知道上帝是如何创造这个世界的。我对这个或那个现象,这个或那个元素的能谱不感兴趣。我要知道的是他的思想。其他都是细节。——爱因斯坦模版最初的目的就是为了减少重复代码...

  • <template>标签的用法

    一、html5中的template标签 template标签,顾名思义,模板的意思 HTML5提供的新标签,更加规范和语义化 可以把列表项放入template标签中,然后进行批量渲染 html中的template标签中的内容在页面中不会显示。但是在后台查看页面DOM结构存在template标签。这是因为template标签天生不可见,它设置了display:none;属性。 二、template标签操作的属性和方法 content属性:在js中template标签对应的dom对象存在content属性,对应

  • 模板(template)使用介绍

    我们已经学过重载(Overloading),对重载函数而言,C++的检查机制能通过函数参数类型的不同及所属类的不同,正确的调用重载函数。例如,为求两个数的最大值,我们定义max()函数需要对不同的数据类型分别定义不同重载(Overload)版本。 但如果在主函数中,我们分别定义了char a,b;那么在执行max(a,b);时 程序就会出错,因为我们没有定义char类型的重载版本。现在,我们...

  • C++ Template

    引言 模板(Template)指C++程序设计设计语言中采用类型作为参数的程序设计,支持通用程序设计。C++ 的标准库提供许多有用的函数大多结合了模板的观念,如STL以及IO Stream。 函数模板 在c++入门中,很多人会接触swap(int&amp;amp;, int&amp;amp;)这样的函数类似代码如下: void swap(int&amp;amp;a , int&amp;amp; b) { int...

Global site tag (gtag.js) - Google Analytics