`
wh870712
  • 浏览: 40323 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

Groovy高效编程——用Closure替代匿名类

阅读更多
由于内部类存在语义缺陷,所以JCP决定将在Java7或Java8中添加对Closure的支持。而Groovy一开始就洞察到了这点,所以在Groovy中没有内部类,只有Closure,不过为了更好地兼容Java,将在未来的某个版本中支持内部类。现在让我们看看Groovy是如何满足Java开发人员对匿名类的需求的。

1,实现接口
interface  Talkable {
     void  sayHello(String name)
}

def man  =  [
     //  实现接口
    sayHello:{String name  ->  println  " Hello, $name " }
] as Talkable

man.sayHello( " Daniel " ) 运行结果:
Hello, Daniel
2,继承抽象类
abstract class Human {
    abstract void sayHello(String name)
}

def man = [
    // 实现抽象方法
    sayHello:{String name -> println "Hello, $name"}
] as Human

man.sayHello("Daniel")运行结果:
Hello, Daniel
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    Groovy轻松入门——Grails实战基础篇

    ### Groovy轻松入门——Grails实战基础篇 #### 搭建Grails环境及创建Grails Demo程序 **Groovy**是一种面向对象的编程语言,它运行于Java平台上,能够与Java代码无缝集成。而**Grails**则是一款基于Groovy的高性能...

    Groovy need not rails——介绍自己写的一个基于groovy的框架,Webx

    Groovy是一种动态、灵活的编程语言,它设计用于Java虚拟机(JVM)上运行,并且与Java代码无缝集成。Groovy的语法简洁且富有表达力,使得开发过程更为高效。在Java生态系统中,Groovy常被用于构建脚本、自动化任务、...

    Show Your ToolBox——锋利的groovy

    《Show Your ToolBox——锋利的Groovy》 在IT领域,工具的选择和使用往往直接影响到工作效率和项目质量。本文将深入探讨Groovy这门强大的动态编程语言,它以其灵活性和与Java的紧密集成,成为了许多开发者的得力...

    groovy和Java相互调用1

    标题中的“Groovy和Java相互调用1”指的是在编程时如何在Groovy语言环境中调用Java类,以及反之,如何在Java程序中调用Groovy类。这是一种跨语言交互的方式,特别是在混合使用Groovy和Java的项目中非常常见。 ...

    最新 groovy开发包

    通过阅读和分析这些源码,你可以学习到如何设计和实现Groovy类、接口、方法,以及如何利用Groovy的元编程能力。 8. **学习资源**:书籍是获取知识的重要途径,这个包中包含的学习书籍可以帮助初学者快速入门,也...

    [Groovy] Groovy 2 编程 (英文版)

    [Pragmatic Bookshelf] Groovy 2 编程 (英文版) [Pragmatic Bookshelf] Programming Groovy 2 Dynamic Productivity for the Java Developer (E-Book) ☆ 出版信息:☆ [作者信息] Venkat Subramaniam [出版机构...

    java 动态脚本语言 精通 Groovy

    Groovy是一种基于Java平台的动态脚本语言,它在Java开发者中越来越受欢迎,因为它提供了简洁、灵活的语法,以及强大的动态编程能力。Groovy与Java兼容性极佳,可以直接调用Java类库,使得它在Java生态系统中具有广泛...

    Groovy v2.4.13官方版

     Groovy是JVM的一个替代语言(替代是指可以用 Groovy 在Java平台上进行Java 编程),使用方式基本与使用 Java代码的方式相同,该语言特别适合与Spring的动态语言支持一起使用,设计时充分考虑了Java集成,这使 ...

    groovy-api-chm

    例如,Groovy提供了闭包(Closure)的概念,它可以作为参数传递给函数,增强了函数式编程的能力。此外,Groovy对集合操作进行了增强,如便利的列表和映射操作,以及对Java流的支持。 学习和理解这些CHM文件中的内容...

    Groovy Script 入门

    闭包是Groovy中的一个重要特性,可以用来定义匿名函数: ```groovy def sum = { a, b -> a + b } println sum(3, 4) // 输出 7 ``` 1. **定义闭包**:使用`{ ... }`语法定义闭包。 2. **调用闭包**:通过变量名...

    Groovy学习资料

    此外,Groovy还有闭包(Closure)的概念,这是Groovy强大的功能之一,它可以用来处理函数式编程任务,如数据过滤和映射。 其次,Groovy的动态特性是另一个关键知识点。Groovy可以在运行时改变类的结构,这意味着你...

    groovy经典_资料

    5. **元编程(Metaprogramming)**:Groovy支持元编程,即在运行时修改或扩展类的行为,这为代码的动态扩展提供了可能。 **开发环境搭建:** 要开始使用Groovy,首先确保安装了JDK 1.5或更高版本,并配置好环境...

    Java中使用Groovy的三种方式

    此外,Groovy提供了许多便利特性,如闭包、元编程等,使得编写更复杂逻辑的类变得更加容易。 ```groovy // Groovy类 class HelloWorld { static void sayHello() { println 'Hello, World!' } } // Java代码...

    Groovy在Spring中的简单使用

    Groovy 在 Spring 中的简单使用 Groovy 是一种敏捷的动态语言,用于 Java 虚拟机,可以与 Java 代码无缝集成。它的类 Java 语法对于 Java 开发人员来说很自然,且可以作为纯粹的脚本语言使用。在 Spring 中动态使用...

    精通 Groovy--下一代开发语言

    Groovy 是 JVM 的一个替代语言 — 替代 是指可以用 Groovy 在 Java 平台上进行 Java 编程,使用方式基本与使用 Java 代码的方式相同。在编写新应用程序时,Groovy 代码能够与 Java 代码很好地结合,也能用于扩展现有...

    groovy in action.pdf

    Groovy开发工具包(GDK)是Groovy语言的核心优势之一,它提供了一系列丰富的扩展方法,使得标准Java类和Groovy类的使用更加方便和直观。这部分内容详细介绍了GDK的使用方法和技巧。 #### 数据库编程与Groovy ...

Global site tag (gtag.js) - Google Analytics