Groovy学习随笔之一

简介:
基于JVM的各种语言最近似乎越来越流行,这也许跟Sun被Oracle收购有关,至少我是那个时候才了解到这些,因为那段时间网上关于Java的讨论特别多,有人担心起Java的前途,进而有人在寻找Java的替代者或补充语言。在51cto上看到有各种关于基于JVM的语言的讨论。对于这些话题,我没有资格讨论什么,也不想讨论什么。只是一直想学一门基于JVM的语言(当然除Java外),曾经打算学习Scala,后来放弃了,语法太晦涩,太与众不同。
 
前两天,一个偶然的机会,下定决心学习一门基于JVM的语言,然后选择了Groovy。选择它有很多原因,其中最重要的原因有两个:1、几乎完全兼容Java语法,可以与Java无缝集成,学习很快;2、Groovy是一门动态脚本语言,这正是我想学习的。于是决定学习Groovy。在学习过程中,会记一些学习笔记,一来方便以后复习;另一方面也希望能够与初学者一起共同学习、进步。
 
下面简要介绍一下Groovy。
 
1、Groovy比较“帅”
 
groovy这个单词是“时髦”的意思,可以理解为帅。为什么呢?
 
Groovy是Java平台上的脚本语言,抽象程度更高,可以更简单快速地开发,编写更少的代码。与Java语言无缝集成,使用“类Java语法”,与Java二进制兼容,都生成字节码,所以可以与使用Java语言所编写的框架和组件完美集成,并且效率安全方面比其他脚本语言要高。
 
Groovy对象就是Java对象,使用与JDK相同的API。另外可以保护整个Java产业在Java上的巨大投资。
 
在中小型项目中,Groovy可以代替Java,在大型Java项目中,可以嵌入Groovy应用。
 
2、Groovy的特征
 
Groovy = Java - 重复的样板代码 + 可选的动态类型 + 闭包(closures) + 领域规范语言(DSL) + 生成器(builders) + 元编程(metaprogramming)。
 
Java默认只导入java.lang.*,而Groovy默认导入ava.lang.*, java.util.*, java.net.*, java.io.*, java.math.BigInteger, java.math.BigDecimal,   groovy.lang.*, groovy.util.*
 
不少语法是可以省略的,如类型、修饰符和return等。
 
http://www.blogjava.net/BlueSUN/archive/2007/04/23/112978.html上有很多可供参考的资源。当然官方网站上的资料更权威,只是是E文的,E文好的最好看官方文档,还可以看《groovy in action》。



     本文转自polaris1119 51CTO博客,原文链接:http://blog.51cto.com/polaris/384908 ,如需转载请自行联系原作者



相关文章
|
2月前
|
人工智能 程序员 API
别再盲目卷Skills了!大模型时代的工具调用(Tool-Use),正在迎来底层范式革命
本文深度剖析Skills(技能包)的本质:当前人工硬编码的Skills只是弥补大模型执行力不足的过渡性“补丁”,而非Agent终局方案。文章指出其三大痛点——幻觉调用、上下文过载、缺乏自适应,并前瞻性提出四大演进路径:自主习得技能、GUI/OS级原生操作、MCP协议标准化、推理与执行架构融合,揭示Skills将从“人工编写”迈向“智能体自主进化”的必然趋势。
299 0
别再盲目卷Skills了!大模型时代的工具调用(Tool-Use),正在迎来底层范式革命
|
Prometheus 监控 Cloud Native
Prometheus实战篇:Prometheus监控nginx
在此专栏的前几篇文章中已经准备了一台服务器作为我们进行环境的准备.大家也可以通过虚拟机创建俩台服务器,一台作为Prometheus的安装另外一台进行其他软件安装并且进行监控的服务器.
|
机器学习/深度学习 传感器 自动驾驶
基于深度学习的图像识别技术在自动驾驶汽车中的应用
【5月更文挑战第28天】 随着人工智能技术的飞速发展,特别是深度学习在图像处理领域的突破,自动驾驶汽车得以实现更为精准的环境感知与决策。本文聚焦于分析基于深度学习的图像识别技术如何革新自动驾驶系统,提升其安全性与可靠性。首先介绍自动驾驶中图像识别的关键作用,然后详细解析深度学习模型在车辆检测、行人识别和交通标志识别等方面的应用进展,最后讨论了目前面临的挑战及潜在的优化方向。
|
消息中间件 数据采集 存储
大数据数据采集的数据采集(收集/聚合)的Flume之数据采集流程的Source的Kafka Source
在Flume中,Kafka Source是一种常见的Source类型。它可以从Kafka的Topic中采集数据,并将其转换成Flume事件进行处理和存储。本文将介绍Kafka Source的配置和数据采集流程。
477 0
|
数据可视化 Java 数据挖掘
手机号归属地查询实例
手机号归属地查询实例
946 0
手机号归属地查询实例
|
9天前
|
存储 弹性计算 缓存
阿里云服务器租赁费用:新版租赁收费标准及活动报价参考
本文更新了2026年阿里云全系列云服务器租赁活动报价,所有特惠资源均可前往阿里云活动中心选购,整体覆盖从个人入门到企业级高性能场景的全梯度需求。其中轻量应用服务器主打极致性价比,2核2G峰值200M带宽配置每日10点、15点限时抢购价仅38元/年,2核4G配置379元/年起;高性价比的经济型e实例、通用算力型u2i实例覆盖2核4G至4核32G全档位,适配开发测试与中小型企业业务;搭载英特尔至强6处理器的第九代c9i企业级实例算力较上代提升20%,支撑高并发生产环境,不同实例规格价差清晰,用户可根据自身业务负载与预算灵活选型。
1869 119
阿里云服务器租赁费用:新版租赁收费标准及活动报价参考
|
10天前
|
人工智能 程序员 API
Codex 接入 DeepSeek-V4-Flash:还能补上识图,提供两套方案
Codex 接入 DeepSeek-V4-Flash 怎么配?本文覆盖 CLI 与桌面端,再用 qwen3-vl-flash 补识图,两套方案可直接照做
1429 13
|
15天前
|
云安全 人工智能 运维
阿里云联动百位企业安全专家,共识Agent防御最佳实践
当Agent成为新员工,你的安全边界在哪里?
1964 10
阿里云联动百位企业安全专家,共识Agent防御最佳实践