`

Groovy Beans

阅读更多
Groovy Beans

http://blog.donews.com/WFoxd/archive/category/groovy


这里是一个 Groovy Bean例子.

    class Car {

      String make

      String model

    }

这个类声明了两个属性,而不包含任何方法.然而,很多事情是在后台完成的. 类,属性和方法默认是公共的(public).公共的和保护的(protected)属性会成为私有域但是它们的公共的/保护的get和 set 会被自动生成.(Public and protected properties result in private fields for which public/protected get and set methods are automatically generated)这些都可以被重载来提供定制的行为.对于明确被声明为私有的(private)属性来说, get和set 方法没有被生成.

上面的Groovy代码等同于以下的Java代码.

    public class Car {

        private String make;

        private String model;

    

        public String getMake() {

            return make;

        }

    

        public String getModel() {

            return model;

        }

    

        public void setMake(String make) {

            this.make = make;

        }

    

        public void setModel(String model) {

            this.model = model;

        }

    }

由Groovy Beans生成的类继承了java.lang.Object类并实现了groovy.lang.GroovyObject类.它添加的方法有getProperty, setProperty, getMetaClass, setMetaClass以及invokeMethod. groovy.lang.MetaClass类允许在运行时添加方法.

Groovy Beans可以使用有名参数创建.例如,下面的代码调用了Car类的无参数构造函数然后调用了每个独立属性的set方法.

    myCar = new Car(make:’ Toyota’, model:’Camry’)
分享到:
评论

相关推荐

    spring-beans-groovy源码

    spring-beans-groovy原码,可以直接导入Eclipse工程里面

    Spring中文帮助文档

    3.4.3. Singleton beans和prototype-bean的依赖 3.4.4. 其他作用域 3.4.5. 自定义作用域 3.5. 定制bean特性 3.5.1. 生命周期回调 3.5.2. 了解自己 3.6. bean定义的继承 3.7. 容器扩展点 3.7.1. 用...

    Spring-Reference_zh_CN(Spring中文参考手册)

    1. 简介 1.1. 概览 1.2. 使用场景 2. Spring 2.0 的新特性 2.1. 简介 2.2. 控制反转(IoC)容器 2.2.1. 更简单的XML配置 ...15.5.1. 注入 Spring 托管的 beans 15.5.1.1. 将 Spring Beans 注入到 Tapestry ...

    spring chm文档

    15.5.1. 注入 Spring 托管的 beans 15.6. WebWork 15.7. 更多资源 16. Portlet MVC框架 16.1. 介绍 16.1.1. 控制器 - MVC中的C 16.1.2. 视图 - MVC中的V 16.1.3. Web作用范围的Bean 16.2. DispatcherPortlet ...

    Spring API

    3.4.3. Singleton beans和prototype-bean的依赖 3.4.4. 其他作用域 3.4.5. 自定义作用域 3.5. 定制bean特性 3.5.1. 生命周期回调 3.5.2. 了解自己 3.6. bean定义的继承 3.7. 容器扩展点 3.7.1. 用...

    Spring 2.0 开发参考手册

    15.5.1. 注入 Spring 托管的 beans 15.6. WebWork 15.7. 更多资源 16. Portlet MVC框架 16.1. 介绍 16.1.1. 控制器 - MVC中的C 16.1.2. 视图 - MVC中的V 16.1.3. Web作用范围的Bean 16.2. DispatcherPortlet ...

    spring-boot-reference.pdf

    Registering Servlets, Filters, and Listeners as Spring Beans 27.4.2. Servlet Context Initialization Scanning for Servlets, Filters, and listeners 27.4.3. The ServletWebServerApplicationContext 27.4.4....

    springboot参考指南

    使用Groovy beans DSL开发应用 iv. 57. 接下来阅读什么 9. VIII. 构建工具插件 i. 58. Spring Boot Maven插件 i. 58.1. 包含该插件 ii. 58.2. 打包可执行jar和war文件 ii. 59. Spring Boot Gradle插件 i. 59.1. ...

    net beans 使用说明

    NetBeans IDE V7.3 的 Groovy 支持提供了对 Groovy 项目的支持,包括对 Groovy 项目的创建、编译、运行和调试等功能。 快捷键 NetBeans IDE V7.3 提供了许多快捷键,以帮助开发者快速地编写和调试代码。这些快捷键...

    appengine-arbitrary-groovy-script-executor:Google App Engine上的Groovy脚本编辑器最终执行器

    Google App Engine上的Groovy脚本编辑器最终执行器此App Engine应用程序允许在Google App Engine上编写和执行任意Groovy脚本。 可以执行所有在类路径上可用的App Engine API。 同样也涉及类路径上的库。 更多功能: ...

    《spring framework4.3.x源码》

    github下载实在太慢,放一个在这,需要50个字,哇!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!...

    Sping开发所用到的包

    spring-beans-3.2.12.RELEASE.jar spring-context-3.2.12.RELEASE.jar spring-context-support-3.2.12.RELEASE.jar spring-core-3.2.12.RELEASE.jar spring-expression-3.2.12.RELEASE.jar spring-instrument-3.2.12...

    netbeans6.8

    NetBeans包括开源的开发环境和应用平台,NetBeans IDE可以使开发人员利用Java平台能够快速创建Web、企业、桌面以及移动的应用程序,NetBeans IDE已经支持PHP、Ruby、JavaScript、Groovy、Grails和C/C++等开发语言。...

    spring完整源代码

    绝对完整,例如: ...spring-beans-groovy spring-context spring-context-support spring-core spring-expression spring-framework-bom spring-instrument spring-instrument-tomcat spring-jdbc 等等

    java做ireport4.7所需的所有jar包

    groovy-all-1.8.6.jar iText-2.1.7.jar iTextAsian.jar iTextAsianCmaps.jar jasperreports-4.7.0.jar jasperreports-applet-4.7.0.jar jasperreports-chart-themes-4.7.0.jar jasperreports-extensions-...

    ysoserial:一种概念验证工具,用于生成利用不安全的Java对象反序列化的有效负载

    描述最初作为AppSecCali 2015讲座一部分发布,其中包含Apache Commons Collections(3.x和4.x),Spring Beans / Core(4.x)和Groovy( 2.3.x)。 后来进行了更新,以包括和其他几个库的其他小工具链。 ysoserial是...

    开发用jar包合集

    gradle-base-services-groovy-2.3-rc-2.jar gradle-build-comparison-2.3-rc-2.jar gradle-build-init-2.3-rc-2.jar gradle-cli-2.3-rc-2.jar gradle-code-quality-2.3-rc-2.jar gradle-core-2.3-rc-2.jar ...

    cgilb应用开发详解

    Groovy 和 BeanShell 也使用 ASM 来生成 java 的字节码。 CGLIB 是一个强大的工具包,广泛应用于许多领域,包括 AOP、OR Mapping、测试、脚本语言等。它提供了一个灵活的方式来代理那些没有实现接口的类,使得...

    zuul-spring-client:用于Zuul集成的Spring框架客户端

    Zuul Spring客户 该项目提供Spring助手和名称空间,以与提供的Web服务集成。 从zuul-spring-client的v 1.4开始,已对命名... beans xmlns = " http://www.springframework.org/schema/beans " xmlns : xsi = " http

    ysoserial:概念证明工具,用于生成利用不安全的Java对象反序列化的有效负载

    最初作为AppSecCali 2015讲座一部分发布,其中包含针对Apache Commons Collections(3.x和4.x),Spring Beans / Core(4.x)和Groovy( 2.3.x)。 后来进行了更新,以包括其他小工具链和其他几个库。 ysoserial是...

Global site tag (gtag.js) - Google Analytics