摘要: 模块与类有两点不同: 模块不能拥有实例 模块不能被继承 (1)模块提供命名空间:A模块的foo方法、num常量 与 B模块的foo方法、num常量不一样 (2)Mix-in就是将模块混合到类中,任何类Mix-in之后都能使用该模块功能如Math模块 (3) (4) (5) (6) (7) (8) ( 阅读全文
posted @ 2016-02-02 03:40 SixEvilDragon 阅读(130) 评论(0) 推荐(0) 编辑
摘要: (1) (2) (3) (4) (5)self.name没有@也可以的原因是因为self表明了它是类变量,这个是例外,与上面不冲突 (6)定义类方法的四种形式(下面介绍三种即可,第四种不用管) (7) (8) (9) (10) (11) (12) 我们定义类时没有指定父类的情况下,Ruby会默认该类 阅读全文
posted @ 2016-02-02 02:21 SixEvilDragon 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 方法名可以由英文字母、数字、下划线组成,但是不能以数字开头。 对象.方法名(参数1,参数2,…,参数n) 调用方法时,不管后面参数多少个,方法调用的括号都可以不写,参数个数多时推荐写上 但是定义方法时: 使用do~end时,可以省略把参数列表括起来的() 使用{}时,只有在没有参数的时候才可以省略把 阅读全文
posted @ 2016-01-31 17:48 SixEvilDragon 阅读(168) 评论(0) 推荐(0) 编辑
摘要: (1) (2) (3) (4) (5) (6)until与while形式一样,只是循环条件相反 (7)loop方法 (8)break、next、redo (9) (10) 阅读全文
posted @ 2016-01-30 23:02 SixEvilDragon 阅读(119) 评论(0) 推荐(0) 编辑
摘要: Ruby中变量名使用_分隔开多个单词,如student_name,与其他语言不同 Ruby中类和模块命名还是使用驼峰命名法,每个单词首字母大写 (1) (2)unless与if用法一致,也可以和else搭配,只是执行条件相反 (3)case when的用法 (4) (5) (6)与其他语言不同,Ru 阅读全文
posted @ 2016-01-30 21:38 SixEvilDragon 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 变量的命名方式决定了变量的种类 局部变量:英文字母或_开头 全局变量:$开头(Ruby中不推荐使用全局变量,要避免使用) 实例变量:@开头 类变量 :@@开头 (2) (3) (4) (5)系统关键字又称为保留字 (6)多重赋值(就是只用一个表达式就给多个变量赋值) (7) (8)传统的笨方法置换变 阅读全文
posted @ 2016-01-30 20:30 SixEvilDragon 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 像数组、散列(就是哈希)这样保存对象的对象,我们称为容器。 索引:我们最常见的数组下标就是索引。 (1) (2) (3) (4) (5)正则表达式 /模式/=~希望匹配的字符串 nil是什么? nil表示对象不存在,就像在正则表达式中表示无法匹配成功一样,方法不能返回有意义的值时就会返回nil。从数 阅读全文
posted @ 2016-01-30 18:31 SixEvilDragon 阅读(167) 评论(0) 推荐(0) 编辑
摘要: (1) (2) (3) 注意区别,第一个打开文件句柄给了file,所以最后要file.close,而这里是直接使用File (4) (5)关于file.read file.each_line read: read是一下子就读取整个文件,比较耗时 内存需要一下子能保存下这个文件,有时文件太大我们只希望 阅读全文
posted @ 2016-01-30 15:55 SixEvilDragon 阅读(142) 评论(0) 推荐(0) 编辑
摘要: (1)如下第五行的分号推荐不写 (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) 默认编码方式: 平台----Windows GBK(或者GB 2312) 平台----Mac OS X UTF-8 平台----Unix UTF-8 times方法 阅读全文
posted @ 2016-01-29 02:46 SixEvilDragon 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 大学里常常发生占位置的现象:头天晚上拿一本书放在课座上,表示位置已经被占了;第二天才来到这个座位上,翻开书正式上课.在这个现象中,"书本"充当了"占位符"的作用。 在Ruby语言中,yield是占位符:先在前面的某部分代码中用yield把位置占着,然后才在后面的某个代码块(block)里真正实现它, 阅读全文
posted @ 2016-01-27 22:28 SixEvilDragon 阅读(191) 评论(0) 推荐(0) 编辑