![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Ruby
gxcbuf
这个作者很懒,什么都没留下…
展开
-
Ruby元编程-学习笔记(三)-代码块
块 块可以定义在大括号中, 也可以放在do…end关键字中, 一般来说,只有一行的块使用{},而对多行的块使用do…end 只有在调用一个方法时才可以定义一个块,块会被直接传递给这个方法,然后该方法可以通过yield关键字回调这个块. 块可以有自己的参数,当回调块时,可以像调用方法一样为块提供参数,并且块中最后一行代码执行的结果会被作为返回值. 通过Kernel#bloc原创 2016-04-23 13:03:50 · 1087 阅读 · 0 评论 -
Ruby元编程-学习笔记(二)-方法
动态方法 使用动态方法可以有效的消除重复代码动态调用方法class MyClass def my_method(arg) arg * 2 endendobj = MyClass.newobj.my_method(3) # => 6obj.send(:my_method, 3) # => 6使用.和send都可以调用my_method方法,不过原创 2016-04-22 23:29:40 · 965 阅读 · 0 评论 -
Ruby元编程-学习笔记(一)-对象模型
Ruby元编程之对象模型 在Ruby并非一切皆对象,还存在着类(class), 模块(module)以及实例变量(instance variable)等语言构件,而对象模型便是这些语言构件所存在的系统.打开类 可以重新打开已经存在的类并进行动态修改,即便是标准类库也不例外class String def my_method puts "This is my_met原创 2016-04-22 18:13:22 · 640 阅读 · 0 评论 -
Ruby元编程-学习笔记(四)-类定义
类定义 在类或模块定义时,其自身充当了当前对象self的角色,类和模块也都是对象,与方法和块相同,类定义也会返回最后一条语句的值.class MyClass puts "Hello"end=> Hello当前类 尽管self可以获得当前对象,但并不能获得当前类,每当通过class关键字打开一个类时,这个类就成为当前类.class MyClass # 现在当前类是MyCl原创 2016-04-24 17:22:16 · 494 阅读 · 0 评论