Groovy(Java笨狗)系列--Class,Scripts
Class是OOP编程的基础。
现在我们开始Class。
下面我们定义一个简单的Groovy类:
class Book {
private String title
Book (String theTitle) {
title = theTitle
}
String getTitle(){
return title
}
}
在上面的Book类中,其实和我们平常的Java类没什么区别,定义了title属性,构造函数,get方法,完全是Java中的一个简单JavaBean.当然,Groovy中的类远不止这么简单,因为我在前面说过,学习一种编程语言,就如学习一门新的外语,假如,你所学的外语接近你的母语,相信,你能更快的熟悉这门语言。
对于脚本语言可能存在一种误解,因为脚本语言提供一种宽松的类型定义和让人感到惊奇的简短语法,它可能更适合作为黑客们(Hackers)的玩具而不是严谨的OOP语言。这种声音可能源于使用shell scripts或者早期的Perl,对于封装的缺乏,对于OOP代码管理上的缺乏,代码的频繁复制,隐藏的模糊不清的Bugs.不能帮助我们使用已有的代码来运用组合继承。
随着时间的推移,脚本语言的前景开始引人注目了。Perl添加了对OOP的支持,Python扩展了对OOP的支持,最近的Ruby,也成为完全的OOP语言。
当然我们的Groovy也是一种完全的OOP语言。它不但增强了Java的脚本语言能力,而且带来了新的OOP特性。比如Java的原始类型在Groovy中的改变,引入了Ranges和closures(闭包),为Collections的使用提供了更简单的方法。
Groovy中定义Class和Java差不多,通过class关键字来定义Class.Class中包含了contain fields, constructors, initializers, methods。而对于Scripts(脚本)不同(哈哈,现在才开始说道Scripts(脚本)),提供了额外的灵活度也带来了一定的限制,它即包含了代码,变量的定义,方法的定义又包含了Class定义。
在Java,Groovy都拥有local variables,他们作为方法一部分存在。
对于variables(变量)它必须在使用前被声明(除了Scripts),这样可以强制范围和拼写错误。声明variables(变量)包括指定name,可选的类型声明,修饰符,赋原始值,定义了变量后,就可以通过他们的名字来引用了。
而在Scripts(脚本)中可以使用未声明的variables(变量)。(待续,今天没多少时间)
Groovy(Java笨狗)系列--Class,Scripts相关推荐
- Groovy(Java笨狗)系列--datatypes
Java's type system-primitives and references(原始值和引用) 在Groovy中,一切都是对象. Java 区分primitive types (比如:int ...
- Groovy(Java笨狗)系列---断言
假如你使用过JDK1.4或者更高版本,你一定熟悉assertions(断言)..通常,他会在你的代码中测试你的逻辑是否矛盾和正确. 接下来我们通过实例来学习Groovy中的断言,在学习之前,请务必记住 ...
- Groovy(Java笨狗)系列--fields and local variables
使用最简单的术语,a variable(变量): 变量名引用的值关联着物理内存的某个位置.和Java一样,Groovy拥有 local variables(本地变量),fields(字段):local ...
- Groovy(Java笨狗)系列-Working with closures(1)
翻译自<Groovy in action>,如有不准确之处,希望指教! closures(闭包)很重要,非常的 重要!!!可以被认为是Groovy中一个非常有用的特性.同时,在你没有完全了 ...
- Groovy(Java笨狗)系列---Getting Started(三)
(一).Setting up your Java environment(设置你的Java环境). Groovy需要Java,建议JDK1.4或者以上.假如你还没有安装Java,请按照下面的步骤来安装 ...
- Groovy on Grails(Java笨狗)系列---前言(二)
本系列的教材是由本人对官方文档的翻译,也算一个对学习的总结,对于原文档的所有权归原作者,译文为共享资源,但不能用于商业目的. 因为groovy,grails的语法发生了很多变化,可能现在互联网上的资料 ...
- Groovy on Grails(Java笨狗)系列---开篇(一)
Groovy 和Grails就不用介绍了 这两个系列主要是写给喜欢Groovy和Grails的朋友们 个人感觉 Groovy on Grails会在以后使我们对现在编程思想的改变,起码对于我自己来说是 ...
- Java笨狗groovy学习笔记—Regular Expressions
正則表達式就像一把瑞士軍刀. "potatoe" ==~ /potatoe/ 假如你在groovyConsole運行它,將返回true.這裡有兩件需要注意的事情: 1.==~操作符 ...
- Grails(Java笨狗)系列-更好的理解闭包(closure)
用现实生活中的示例来说明闭包 现在,让我们来考虑放在信封里的信纸.信纸里可能写着"x=5, y=10"等等一些内容.对于一个闭包(closure),信纸上可能写着一系列的指令.你可 ...
最新文章
- 清晰易懂的条件随机场原理总结
- Know about RDBMS market share
- sqlserver中查找存储过程中的关键字方法之二
- python中imread导入失败_ImportError:无法导入加载图像文件所需的Python Imaging Library(PIL)...
- 信息学奥赛C++语言:格莱尔的香蕉
- 贡献分选择结果——Teamwork
- Cmake构建_指定gcc/g++版本
- 国际国内cms系统开源网址大综合
- mac下加速下载百度云资源
- linux下查询utp命令,Linux后台下载工具(器)transmission 使用详解
- 张柏芝感动落泪:“没有任何一份礼物珍贵过两个儿子!”
- 山东大学项目实训(二十七)—— 微信小程序开发总结,一年时间真的可以改变一个人很多
- 少儿编程语言有哪些分类,分别适合多大年龄的学生?
- 洛谷 P1725 琪露诺 题解
- 未来计算机的将朝着,未来计算机将朝着哪几个方向发展?
- 读取二代身份证上的相片,函数GetBmp(char * Wlt_File,int intf) 怎么用?
- 【转】2023年Java学习路线图-黑马程序员
- 工程伦理(2021春)第三章课后习题答案
- 从本质矩阵恢复相机矩阵
- 毕业设计-基于微信小程序的实验室服务系统