??xml version="1.0" encoding="utf-8" standalone="yes"?>国产精品伊人,中文在线资源观看网站视频免费不卡,自拍偷拍精品http://www.aygfsteel.com/emu/category/1400.htmlzh-cnTue, 27 Feb 2007 11:27:46 GMTTue, 27 Feb 2007 11:27:46 GMT60Groovy 学习W记4 packagehttp://www.aygfsteel.com/emu/archive/2005/05/19/4878.htmlemuemuThu, 19 May 2005 10:37:00 GMThttp://www.aygfsteel.com/emu/archive/2005/05/19/4878.htmlhttp://www.aygfsteel.com/emu/comments/4878.htmlhttp://www.aygfsteel.com/emu/archive/2005/05/19/4878.html#Feedback3http://www.aygfsteel.com/emu/comments/commentRss/4878.htmlhttp://www.aygfsteel.com/emu/services/trackbacks/4878.html
Dog.groovy:

 1package com
 2class Dog {
 3    public def name;
 4    def bark ()  {
 5        println("barking")
 6    }

 7    def say ()  {
 8        println("My name is "+name);
 9    }

10}

11


嗯,一只会说一句话的狗Q还回吠哦?BR>
~译一下看看有没有错: groovyc Dog.groovy
嗯,没有错,而且在当前目录下生成了一个com目录Q其中有Dog.class文g

再徏一个类来引用这个类  trainDog.groovyQ?BR>
1dog = new com.Dog(name:"Doggie");
2dog.bark();
3dog.say();
4



q行……失败了Q?BR>
Caught: General error during class generation: No such class: com.Dog in constructor call for class: trainDog. At [1:7] D:\groovy\mygroovy\com\trainDog.groovy

一番努力之后,始终无法?trainDog.groovyq行hQ但是反~译q两个groovy生成的class文g看v来又很正。算了,用java来运行它吧(q好一开始就配置了editplus下面的调试环境,下面的命令由editplus自动生成Q不用自己敲了)

D:\jdk1.5.0\bin\java.exe -classpath .;d:\groovy\groovy-1.0-jsr-01.jar;d:\groovy\lib\asm-1.5.2.jar trainDog

果然不错Q?BR>
---------- java ----------
barking
My name is Doggie
Normal Termination
输出完成(耗时 0 U??/P>


看来groovy虽然可以直接q行Q却不能直接怺引用。进行复杂应用的时候还是要先编译好以便他们可以怺引用cL件。此外groovy~译器会自动为包创徏对应的目录,所以所有的groovy不管分散到多包里面都要在同一个目录(所有包的上一层)下面~译?BR>



emu 2005-05-19 18:37 发表评论
]]>
Groovy 学习W记3 q行效率 http://www.aygfsteel.com/emu/archive/2005/05/18/4784.htmlemuemuWed, 18 May 2005 10:19:00 GMThttp://www.aygfsteel.com/emu/archive/2005/05/18/4784.htmlhttp://www.aygfsteel.com/emu/comments/4784.htmlhttp://www.aygfsteel.com/emu/archive/2005/05/18/4784.html#Feedback9http://www.aygfsteel.com/emu/comments/commentRss/4784.htmlhttp://www.aygfsteel.com/emu/services/trackbacks/4784.html阅读全文

emu 2005-05-18 18:19 发表评论
]]>
groovy 学习W记2 IDE http://www.aygfsteel.com/emu/archive/2005/05/18/4781.htmlemuemuWed, 18 May 2005 09:55:00 GMThttp://www.aygfsteel.com/emu/archive/2005/05/18/4781.htmlhttp://www.aygfsteel.com/emu/comments/4781.htmlhttp://www.aygfsteel.com/emu/archive/2005/05/18/4781.html#Feedback0http://www.aygfsteel.com/emu/comments/commentRss/4781.htmlhttp://www.aygfsteel.com/emu/services/trackbacks/4781.html

groovy虽然没有自己的IDEQ但是它可以依附在很多现有的开发环境如eclipseQintelli idea{。不q不巧我都不大用q些开发环境的。还好,扑ֈ?A >groovy的ultraedit语法文g q样在ultraedit下面也可以高亮显C、编译和q行groovy了?



ultraedit甚至q提供了命o自动补全功能Q不q默认用的l合键是ctrl+spaceQ恰好和输入法切换键冲突了。不q我们可以修改组合键Q?BR>


Advanced - Configuration - Key Mapping


在commands里面扑ֈAutoCompleteQ命令不是按字母排序的,按一下“A”键p动找到啦Q,然后输入焦点转到 Press New Key框中Q选择自己喜欢的组合键Q比?Alt+spaceQ确认组合键出现在框里面后点一下Assign键,大功告成?BR>


详细介绍?http://groovy.codehaus.org/UltraEdit+Plugin


editplus也是我心q~辑器之一Q还好不只我喜欢editplus和groovyQ有个韩国网站也有同好:http://www.javaclue.org/index.jsp


看不?-P。不q也不用看懂Q直接把他们写的groovy语法文g








http://www.javaclue.org/groovy/editor/editplus/groovy.acp

 ?BR>
http://www.javaclue.org/groovy/editor/editplus/groovy.stx





下蝲下来Q在editplus的参数选项Q-讄和语法里面添加groovy的语法和自动补全文gQ现在editplus也支持groovy的高亮显C和自动补全了?BR>




不过editplus的自动补全和ultraedit有写不同Q是敲一个关键字Q然后按I格的时候把相关的语法元素自动补q来?BR>

如果韩国|站讉K不到也可以到q里下这两个语法文g?/P>



emu 2005-05-18 17:55 发表评论
]]>
groovy学习W记1 Q从HelloWorld到八皇后 http://www.aygfsteel.com/emu/archive/2005/05/18/4780.htmlemuemuWed, 18 May 2005 09:50:00 GMThttp://www.aygfsteel.com/emu/archive/2005/05/18/4780.htmlhttp://www.aygfsteel.com/emu/comments/4780.htmlhttp://www.aygfsteel.com/emu/archive/2005/05/18/4780.html#Feedback2http://www.aygfsteel.com/emu/comments/commentRss/4780.htmlhttp://www.aygfsteel.com/emu/services/trackbacks/4780.html

|上看到很多评论?/SPAN>groovy 是个很好用的脚本语言Q周末去下了一个回来看看。语法好像和java有些接近Q不q松散了一些,有好也有坏吧。遗憄是没?/SPAN>IDEQ只好在editplus上面配了?/SPAN>groovy工具l,Mq行、编译和控制C个命令进去,然后开始照着手册敲代码?/SPAN>

 

M的时候就换过好几ơ开发语aQ?/SPAN>LOGO, BASIC (?/SPAN>APPLE II 上面的那U呵?/SPAN>), TRUE BASIC, QUICK BASIC, TURBO PASCAL, TURBO C, TPW, BC++, DELPHI每次换一U语aLq样几个stepQ?/SPAN>

1?/SPAN> hello worldQ看看开发环境) 2?/SPAN> 99乘法表(看看循环、格式化输出Q?/SPAN>3 做个比较复杂点的E序Q看看过E调用、@环、判断这些基本的语言特征?/SPAN>

 

好些q没有学新语a了,q是先试试这三板q时的(面向对象、数据库、网l服务都没有涉及刎ͼ斧头q能不能砍得了东西吧?/FONT>

1 hello world

脚本语言是方便Q一点上下文都没有,一?/SPAN>println搞定了

 

2 99乘法?/SPAN>

 1def i=0 
 2def j
 3while(i<9){
 4    i++
 5    j=1
 6    while(j<=i){
 7        print(j+"*"+i+"="+(i*j)+"\t")
 8        j++
 9    }

10    println()
11}

脚本语言是松散Q分号加不加都可以。语法和数据cd好像都跟java差不多?/SPAN>

 

3 写个复杂一点的例子。前两天?/SPAN>《程序员法则?/FONT>刚好看到提v了著名的八皇后问题,写个八皇后吧:

 1int q=8
 2int[] i=new int[q]
 3int count=0
 4long t = System.currentTimeMillis();
 5scan(0)
 6println("totle results:"+count)
 7println("totle time:"+(System.currentTimeMillis()-t));
 8def scan(n){
 9    if (n==q){
10        println(i.toList())
11        count++
12        return
13    }

14    i[n]=0
15    while(i[n]<q){
16        i[n] = i[n]+1
17        if (check(n))
18            scan(n+1)
19    }

20}

21def check(n){
22    if (n>0)
23        for (j in 0..<n) 
24            if (i[j]==i[n] || i[j]-i[n]==j-|| i[j]-i[n]==n-j )
25                return false
26    return true
27}



呵呵Q典型的面向q程Q全局变量都弄出来了。运行一下还满快的?/FONT>

 

在blogjava贴程序的时候groovy的一个语aW号?..”(23行)被替换成囄了,不过本来q个W号也已l开始被淘汰了,用?.<?/FONT>



emu 2005-05-18 17:50 发表评论
]]>
վ֩ģ壺 | Ͼ| | | | | ¯| | ͤ| | ˮ| | ɽ| | | | | | | | | | | ٸ| | | ͳ| | ɽ| Դ| | | Т| ɽʡ| | | | ̫| | | ʲ|