位置: 编程技术 - 正文
推荐整理分享Ruby元编程基础学习笔记整理(ruby元编程第二版),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:ruby程序语言,ruby元编程第二版中文 下载,ruby程序语言,ruby编程视频教程,ruby编程视频教程,ruby元编程第二版中文 下载,ruby元编程第二版中文 下载,ruby元编程第二版中文 下载,内容如对您有帮助,希望把文章链接给更多的朋友!
笔记一:代码中包含变量,类和方法,统称为语言构建(language construct)。
总结:实例方法继承于类,实例变量存在于对象本身。类和对象都是ruby中的第一类值。
应用示例:
分别输出
笔记二:动态调用当你调用一个方法时,实际是给一个对象发送了一条消息。
结果:
可以使用object#send()取代点标记符来调用MyClass#my_method()方法:
send()方法第一个参数是要发送给对象的消息,可以是符号(:symbol)或字符串,其他参数会直接传递给调用的方法。可以动态的决定调用哪个方法的技术,成为Dynamic Dispatch。
笔记三:符号和字符串的区别1. 符号不可变,可以修改字符串中的字符。2. 针对符号的操作更快些。3. 通常符号用来表示事物的名字。例如:
动态派发中使用模式派发(pattern dispatch)的方法。
笔记四:动态定义使用Module#define_method()方法定义一个方法。
结果:
单件方法允许给单个对象增加一个方法。singleton methods
结果:
笔记五:类方法的本质,类是对象,类名是常量。在类上调用方法和对象调用方法一样:
Duck Typing:对象能不能响应方法,可以是普通方法或者单件方法。类方法的实质就是他们是类的一个单件方法。
obj可以是对象引用,常量类名或self。
类宏(Class Macro)Ruby对象没有属性,可以使用拟态方法定义属性。Module#attr_*()方法中的一员来定义访问器。类宏不是关键字而是方法。
Eigenclass单件方法按照常规的方法查找在祖先链无法找到保存的地方,obj是对象不能保存,也不能存在于class内,否则所有的实例都可以共享这个方法。对象拥有一个特有的隐藏类,称为该对象的eigenclass。进入eigenclass作用域:
如果想获取eigenclass的引用,则可以在离开该作用域时返回self:
附录:类变量,实例变量,类方法,实例方法区别@@ :var类变量@ :实例变量self(clas,::).method :类方法method :实例方法
结果:
Python使用Srapy框架爬虫模拟登陆并抓取知乎内容 一、Cookie原理HTTP是无状态的面向连接的协议,为了保持连接状态,引入了Cookie机制Cookie是http消息头中的一种属性,包括:Cookie名字(Name)Cookie的值(Value
python中函数传参详解 一、参数传入规则可变参数允许传入0个或任意个参数,在函数调用时自动组装成一个tuple;关键字参数允许传入0个或任意个参数,在函数调用时自动组
使用Python从有道词典网页获取单词翻译 从有道词典网页获取某单词的中文解释。importreimporturllibword=raw_input('inputawordn')url='
标签: ruby元编程第二版
本文链接地址:https://www.jiuchutong.com/biancheng/387032.html 转载请保留说明!友情链接: 武汉网站建设