作者: 李东龙
一 .什么是Groovy?
Groovy是一种基于JVM的敏捷开发语言,它结合了Python、Ruby和Smalltalk的许多强大的特性,Groovy代码能够与 Java 代码很好地结合,也能用于扩展现有代码。由于其运行在 JVM上的特性,Groovy 可以使用其他 Java语言编写的库。
Groovy 是用于Java虚拟机的一种敏捷的动态语言,它是一种成熟的面向对象编程语言,既可以用于面向对象编程,又可以用作纯粹的脚本语言。使用该种语言不必编写过多的代码,同时又具有闭包和动态语言中的其他特性。
Groovy是 JVM的一个替代语言(替代是指可以用 Groovy在 Java 平台上进行 Java编程),使用方式基本与使用 Java 代码的方式相同,该语言特别适合与Spring的动态语言支持一起使用,设计时充分考虑了Java集成,这使 Groovy与 Java 代码的互操作很容易。
说白了Groovy也是一种开发语言,上面是百度百科中对Groovy的概念行解释.下面大家看一个小例子吧!
import groovy.lang.GroovyClassLoader;
import java.io.File;
public class InvokeGroovy {
public static void main(String[] args) {
ClassLoader cl = new InvokeGroovy().getClass().getClassLoader();
GroovyClassLoader groovyCl = new GroovyClassLoader(cl);
try {
Class groovyClass = groovyCl.parseClass(new File("src/com/jlee/Foo.groovy"));
IFoo foo = (IFoo) groovyClass.newInstance();
System.out.println(foo.run(new Integer(2)));
} catch (Exception e) {
e.printstacktrace();
}
}
}
下面是接口:
/**
* @author ldl
* @date 2012-12-19
* @desc Java 接口
*/
public interface IFoo {
public Object run(Object foo);
}
下面是对该接口的具体实现:
/**
* @author Jlee
* @date 2012-12-19
* @desc 实现Java 接口的 Java 类
*/
public class Foo2 implements IFoo {
public Object run(Object foo) {
System.out.println("Foo2里面输出 : "+foo);
return "foo2";
}
}
下面是Groovy对该功能的实现:
import java.lang.Override
/**
* @author Jlee
* @date 2012-12-19
* @desc 实现Java 接口的 Groovy 类
*/
public class Foo implements IFoo {
@Override
public Object run(Object foo){
println 'Hello World!' ;
/*******************************
* 实例化Java实现Foo接口的Foo2类*
* Groovy中调用Java *
* ******************************/
Foo2 f2 = new Foo2() ;
def str = f2.run(2);
println str ;
return foo*10;
}
//直接运行该Groovy类
public static void main(args){
Foo f = new Foo();
f.run(3)
}
}
大家看一下这样的实现是不是很简洁啊! 不过具体的开发还需要慢慢研究!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。