ClassOOP编程的基础。

现在我们开始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相关推荐

  1. Groovy(Java笨狗)系列--datatypes

    Java's type system-primitives and references(原始值和引用) 在Groovy中,一切都是对象. Java 区分primitive types (比如:int ...

  2. Groovy(Java笨狗)系列---断言

    假如你使用过JDK1.4或者更高版本,你一定熟悉assertions(断言)..通常,他会在你的代码中测试你的逻辑是否矛盾和正确. 接下来我们通过实例来学习Groovy中的断言,在学习之前,请务必记住 ...

  3. Groovy(Java笨狗)系列--fields and local variables

    使用最简单的术语,a variable(变量): 变量名引用的值关联着物理内存的某个位置.和Java一样,Groovy拥有 local variables(本地变量),fields(字段):local ...

  4. Groovy(Java笨狗)系列-Working with closures(1)

    翻译自<Groovy in action>,如有不准确之处,希望指教! closures(闭包)很重要,非常的 重要!!!可以被认为是Groovy中一个非常有用的特性.同时,在你没有完全了 ...

  5. Groovy(Java笨狗)系列---Getting Started(三)

    (一).Setting up your Java environment(设置你的Java环境). Groovy需要Java,建议JDK1.4或者以上.假如你还没有安装Java,请按照下面的步骤来安装 ...

  6. Groovy on Grails(Java笨狗)系列---前言(二)

    本系列的教材是由本人对官方文档的翻译,也算一个对学习的总结,对于原文档的所有权归原作者,译文为共享资源,但不能用于商业目的. 因为groovy,grails的语法发生了很多变化,可能现在互联网上的资料 ...

  7. Groovy on Grails(Java笨狗)系列---开篇(一)

    Groovy 和Grails就不用介绍了 这两个系列主要是写给喜欢Groovy和Grails的朋友们 个人感觉 Groovy on Grails会在以后使我们对现在编程思想的改变,起码对于我自己来说是 ...

  8. Java笨狗groovy学习笔记—Regular Expressions

    正則表達式就像一把瑞士軍刀. "potatoe" ==~ /potatoe/ 假如你在groovyConsole運行它,將返回true.這裡有兩件需要注意的事情: 1.==~操作符 ...

  9. Grails(Java笨狗)系列-更好的理解闭包(closure)

    用现实生活中的示例来说明闭包 现在,让我们来考虑放在信封里的信纸.信纸里可能写着"x=5, y=10"等等一些内容.对于一个闭包(closure),信纸上可能写着一系列的指令.你可 ...

最新文章

  1. 清晰易懂的条件随机场原理总结
  2. Know about RDBMS market share
  3. sqlserver中查找存储过程中的关键字方法之二
  4. python中imread导入失败_ImportError:无法导入加载图像文件所需的Python Imaging Library(PIL)...
  5. 信息学奥赛C++语言:格莱尔的香蕉
  6. 贡献分选择结果——Teamwork
  7. Cmake构建_指定gcc/g++版本
  8. 国际国内cms系统开源网址大综合
  9. mac下加速下载百度云资源
  10. linux下查询utp命令,Linux后台下载工具(器)transmission 使用详解
  11. 张柏芝感动落泪:“没有任何一份礼物珍贵过两个儿子!”
  12. 山东大学项目实训(二十七)—— 微信小程序开发总结,一年时间真的可以改变一个人很多
  13. 少儿编程语言有哪些分类,分别适合多大年龄的学生?
  14. 洛谷 P1725 琪露诺 题解
  15. 未来计算机的将朝着,未来计算机将朝着哪几个方向发展?
  16. 读取二代身份证上的相片,函数GetBmp(char * Wlt_File,int intf) 怎么用?
  17. 【转】2023年Java学习路线图-黑马程序员
  18. 工程伦理(2021春)第三章课后习题答案
  19. 从本质矩阵恢复相机矩阵
  20. 毕业设计-基于微信小程序的实验室服务系统

热门文章

  1. c语言vb考试试题,湖南省计算机二级VB以及C语言考试(OFFICE部分基础选择题)
  2. nvidia驱动升级和nvidia-docker2安装
  3. 攻防世界reverse高手进阶 ----- gametime
  4. Flutter Icon
  5. canvas动画粒子效果分享,可以做背景,超级好看
  6. Halcon联合VS2010打开相机并显示
  7. 美德乐吸奶器怎么样?
  8. iOS适配之autolayout和sizeclass(二)
  9. apple IDP 个人账户升级到公司账户(转)
  10. html图片怎么做成链接,HTML的链接代码怎么做?HTML的图片链接怎么制作?