groovy安装及一些特性思考

  • 安装:
    1. http://groovy.codehaus.org/Download 下载binary版本
    2. 解压后设置GROOVY_HOME为你解压的地址,PATH为GROOVY_HOME/bin
    3. 执行groovysh看能否进行groovy命令行模式,或者groovyConsole进行交互模式

  • eclipse插件安装:

    1. http://groovy.codehaus.org/Eclipse+Plugin
  • groovy与java比较的特性
    • 动态编译groovy如同其他脚本语言一样,是不是需要进行事先编译才能运行的,而是直接可以运行,在运行时进行编译,因此在性能上会差于java。
    • 动态类型与java不同,groovy声明变量时不用指定变量类型,变量的类型在最终使用时动态指定,如:
    • str="this is a string"
      而且在调用某个对象的方法,能否调用完全取决于该类有没有此方法,如果有此方法便可调用 ,这就天然的支持多态,甚至比java的多态更加得自由,如:
    • class ThisClass{
          def name
          def phone
      }
      class OtherClass{
          def sex
          def name
      }
      def showname(people){
          println "people name is:"+people.name
      }
      ThisClass tc = new ThisClass(name:"this",phone:"123")
      OtherClass oc = new OtherClass(sex:"man",name:"other")
      showname(tc)
      showname(oc)

    • 闭包groovy中与java另一个不同是groovy能像javascript一样将函数作为变量进行传递,从而能够实现闭包以及callback方式的调用,如:
    • class User{
          def name
          def phone
      }
      
      phonesome = {user ->
          println "dial  $user.phone    !"
          println "connected!!!"
          println "hello $user.name"
      }
      
      
      class Me{
          def friend
          def dosomething(something){
              
              something.call(friend)
          }
      }
      me = new Me(friend: new User(name:"haidong",phone:"12345"))
      me.dosomething(phonesome)

    • 其他各种对collection、IO等的调用简便化处理
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值