加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

groovy安装及一些特性思考

发布时间:2020-12-14 16:54:58 所属栏目:大数据 来源:网络整理
导读:安装: http://groovy.codehaus.org/Download?下载binary版本 解压后设置GROOVY_HOME为你解压的地址,PATH为GROOVY_HOME/bin 执行groovysh看能否进行groovy命令行模式,或者groovyConsole进行交互模式 eclipse插件安装: http://groovy.codehaus.org/Eclipse
  • 安装:
    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等的调用简便化处理
        • (编辑:李大同)

          【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

            推荐文章
              热点阅读