Groovy笔记(1)_简介

Groovy是一种在Java平台上运行的脚本语言,它具有简洁高效的代码编写方式,并与Java完全兼容。Groovy支持动态类型、闭包、领域特定语言等功能,使得开发者能够更快速地开发应用程序。
<p><span style="font-size: medium;"><strong>Groovy简介:</strong></span></p>
<p><span style="font-size: medium;"><strong></strong></span></p>
<p style="text-align: left; padding-left: 60px;">参考书籍:《Groovy入门经典》、《Groovy in Action》</p>
<p></p>
<p>1、Groovy是Java平台上脚本语言,抽象程度更高</p>
<ul>
<li>可以更简单快速地开发,可以编写更少的代码。</li>
</ul>
<p>2、与Java语言无缝集成,可称为“超级Java”</p>
<ul>
<li>使用“类Java”语法,Java成语员可以快速过渡。</li>
<li>Groovy与Java二进制兼容,都生成字节码,所以可以与使用Java语言所编写的框架和组件完美继承,并且效率安全方面比其他脚本语言要高。</li>
<li>Groovy对象就是Java对象,使用与JDK相同的API。</li>
<li>可以保护整个Java产业在Java上的巨大投资。</li>
</ul>
<p>3、在中小型项目中可以替代Java,在大型Java项目中可以嵌入Groovy应用。</p>
<p></p>
<p><span style="font-size: medium;"><strong>Groovy特征:</strong></span></p>
<p></p>
<p>1、Groovy = Java - 重复的样板代码 </p>
<p> +可选的动态类型</p>
<p> +闭包(closures)</p>
<p> +领域规范语言(DSL)</p>
<p>+生成器(builders)</p>
<p>+元编程(metaprogramming)</p>
<p>2、Groovy是没有类型/修饰符/return/iterator,不需要导入集合的Java。Groovy丢掉了许多Java的包袱。</p>
<p>3、不能确定变量类型时将变量类型设为Object</p>
<p>4、DLS:domain specific languages</p>
<p>5、生成器:可以生成XML/HTML/Swing树状数据结构</p>
<p>6、元编程:运行时对类增加行为,类似于AOP。</p>
<p></p>
<p><strong></strong></p>
<p><span style="font-size: medium;"><strong>搭建开发环境:</strong></span></p>
<p></p>
<p></p>
<p>1、JDK1.5或更高版本</p>
<ul>
<li>
<a href="http://java.sun.com">http://java.sun.com</a>
</li>
<li>配置好JAVA_HOME,PATH/CLASSPATH(可选)</li>
</ul>
<p>2、Groovy-1.5.4或更高版本</p>
<ul>
<li><a href="http://groovy.codehaus.org/Download">http://groovy.codehaus.org/Download</a></li>
<li>应该下载Windows-installer:Binary Release</li>
<li>GROOVY_HOME与PATH(安装时会自动配置)</li>
</ul>
<p>3、Eclipse3.3 <a href="http://www.eclipse.org">http://www.eclipse.org</a></p>
<p>4、MyEclipse6插件或更高版本(Web版本需要)</p>
<ul>
<li>eclipse - help - install/update - Serch for new features to install - url - New Remote Site - URL=</li>
</ul>
<p>5、MySQL5数据库</p>
<p>6、Jad反编译工具及Eclipse插件(可选)</p>
<p></p>
<p><strong><span style="font-size: medium;">直接来源于Java语法的特性</span></strong></p>
<p></p>
<p>1、关键字与语句</p>
<p>2、类,接口,属性,方法的定义。</p>
<p>3、使用new创建对象。</p>
<p>4、包导入机制。</p>
<p>5、try/catch/finally异常处理机制。</p>
<p>6、运算符,表达式,复制。</p>
<p>7、控制结构。</p>
<p>8、代码注释。</p>
<p></p>
<p><span style="font-size: medium;"><strong>Groovy自动导入如下包:</strong></span></p>
<ul>
<li>groovy.lang.*</li>
<li>groovy.util.*</li>
<li>java.lang.*</li>
<li>java.util.*</li>
<li>javautil.regex.*</li>
<li>java.net.*</li>
<li>java.io.*</li>
<li>java.math.BigDecimal</li>
<li>java.math.BigInteger</li>
</ul>
<p></p>
<p><span style="font-size: medium;"><strong>数值:</strong></span></p>
<p><span style="font-size: medium;"><strong></strong></span></p>
<p></p>
<p>1、Groovy的一切都是对象。自动装箱与拆箱</p>
<p>2、整数123,-12,0都是Integer类的对象。</p>
<ul>
<li>定义变量(使用动态类型):def price = 100等同于 Integer price =new Integer(100)</li>
<li>3.times{println 'Hello'} 打印3次, 3是对象,所以可以用方法。</li>
<li>语句结尾可以不用 ";" 结尾。</li>
</ul>
<p>3、浮点数1.5,-3.14都是BigDecimal类的对象</p>
<p>4、数值类型:</p>
<ul>
<li>Integer 15</li>
<li>Long 100L 100l</li>
<li>Float 1.23f 4.56F</li>
<li>Double1.23d4.55D</li>
<li>java.math.BigInteger 123g 456G</li>
<li>java.math.BigDecimal1.231.23g1.23G</li>
</ul>
<p></p>
<p><strong><span style="font-size: medium;">GDK数值方法:</span></strong></p>
<p></p>
<p></p>
<p>1、def store = ' '</p>
<p>10.<span style="color: #ff0000;">times</span>{store += 'x'}</p>
<p> assert store =='xxxxxxxxxx'</p>
<p></p>
<p>2、store = ' '</p>
<p> 1.<span style="color: #ff0000;">upto</span>(5){number -> store +=number}</p>
<p>assert store = '12345'</p>
<p></p>
<p>3、store = ' '</p>
<p> 2.<span style="color: #ff0000;">downto</span>(-2){number -> store = number + ' '}</p>
<p> assert stroe = '2 1 0 -1 -2'</p>
<p></p>
<p>4、store = ' '</p>
<p>0.<span style="color: #ff0000;">step</span>(0.5,0.1){number -> store += number + ' '} 从0开始加到0.5,每次加0.1</p>
<p> assert store == '0 0.1 0.2 0.3 0.4'</p>
<p></p>
<p></p>
<p></p>
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值