随笔分类 -  Ruby基础

摘要:关于mixin, 经常被问到一个问题是, 方法查找是如何处理的? 特别地, 如果类, 父类, 以及类所包含的mixin中, 都定义有相同名字的方法时, 会发生什么?答案是, ruby首先会从对象的直属类中查找, 然后是类所包含的mixin, 之后是超类以及超类的mixin. 如果一个类有多个混入的模... 阅读全文
posted @ 2014-10-25 17:43 tardis 阅读(687) 评论(0) 推荐(0)
摘要:操作符 含义== 测试值是否相等==== 用来比较case语句的目标和每个when从句的项 通用比较操作符。 根据接受者小于, 等于, 大于其参数, 返回-1, 0. 1=, > 小于... 阅读全文
posted @ 2014-10-06 11:27 tardis 阅读(441) 评论(0) 推荐(0)
摘要:https://ruby-china.org/wiki/install_ruby_guide 这上面有全部教程, 亲测可用 阅读全文
posted @ 2014-10-03 11:33 tardis 阅读(165) 评论(0) 推荐(0)
摘要:直接上代码:module Action def jump @distance = rand(4) + 2 puts "I jumped forward #{@distance} feet!" endendclass Rabbit include Action attr_reade... 阅读全文
posted @ 2014-10-02 22:25 tardis 阅读(318) 评论(0) 推荐(0)
摘要:我们可以认为module是一个专门存放一系列方法和常量的工具箱。module和class非常像, 只是module不能创建实例也不能有子类, 它们仅仅能存放东西。例如:module Circle PI = 3.141592653589793 def Circle.area(radius) ... 阅读全文
posted @ 2014-10-02 21:06 tardis 阅读(435) 评论(0) 推荐(0)
摘要:Ruby继承的语法class DerivedClass 用attr_reader, attr_writer读写属性(attribute)根据前面我们所学,如果想要访问定义在类中的属性,例如,我们想要访问@name实例变量, 我们必须这么写def name @nameend如果我们想要我们想修改@n... 阅读全文
posted @ 2014-10-02 21:02 tardis 阅读(4292) 评论(0) 推荐(0)
摘要:Ruby是一种面向对象编程语言,这意味着它操纵的编程结构称为"对象"先上代码, 了解类的定义与使用方式class Computer $manufacturer = "Mango Computer, Inc." @@files = {hello: "Hello, world!"} def i... 阅读全文
posted @ 2014-10-02 17:01 tardis 阅读(515) 评论(0) 推荐(0)
摘要:BlockBlocks就是存放一些可以被执行的代码的块,通常用do...end 或者 {}表示例如:[1, 2, 3].each do |num| puts numend[1, 2, 3].each { |num| puts num }Blocks可以和.each、.times等联合使用,用来对每... 阅读全文
posted @ 2014-10-02 11:07 tardis 阅读(323) 评论(0) 推荐(0)
摘要:在Ruby中只有false和nil是'假', 其余都是真(0也是真) 阅读全文
posted @ 2014-09-30 12:27 tardis 阅读(141) 评论(0) 推荐(0)
摘要:1.Ruby常用数据类型Numbers, Strings, Booleansmy_num = 25my_boollean = true (or false)my_string = "Ruby"2.Ruby常用数学计算操作符加(+) 减 (-)乘 (*)除(/)幂次方 (**)求余 (%)3... 阅读全文
posted @ 2014-09-28 16:00 tardis 阅读(1264) 评论(0) 推荐(0)