Ruby语言入门(11)- 内部类 - Object

上一篇 / 下一篇  2013-02-01 15:25:15 / 个人分类:语言

Object类是所有类的超类,它定义了对象的一般行为。

包含的模块为Kernel。

定义的方法有:

= =
两个对象对象是否相等

~ = =
两个对象是否不等

= = =
对象是否为子类

class
对象的父类

clone
克隆对象

dup
克隆对象的内容

display(out = $stdout)
将对象输出到 out

eql?/equal?
等同于 ==

extend(module ... )
将参数所指模块的实例方法追加为self的特殊方法.返回self.

freeze
禁止修改对象的内容.返回self.

frozen?
若某对象禁止修改其内容则返回真

hash
返回对象的哈希表值.


_ _id_ _ / object_id
返回与各个对象对应的唯一的整数.

inspect
将某对象转为人工可读的字符串并返回该字符串.

instance_eval(expr, [fname, [lineno=1]])
instance_eval {|obj| ... }
在对象的context中计算字符串expr并返回结果.在对象的context进行计算是指,将self设为那个对象然后开始执行.同时,若在字符串/块中定义了方法的话,则相当于定义了self的特殊方法.

若给出了fname和lineno的话,将假定字符串位于在文件fname的第lineno行,然后开始编译,并能显示文件名/行号等栈跟踪信息. 若给出了块的话,将在对象的context中计算该块并返回结果.self将被传递给块的参数obj.

instance_of?(klass)
若self为klass类的直接的实例时,返回真.

instance_variable_get(var)
取得并返回对象的实例变量的值.

instance_variable_set(var, val)
将val的值赋值给对象的实例变量并返回该值.

instance_variables
以字符串数组的形式返回对象的实例变量名.

is_a?(mod)
kind_of?(mod)
只要self是下列任何一个类的实例就返回真::mod类和它的子类,以及包括mod模块的类和它的子类.

method(name)
将self的方法name对象化后得到Method对象并返回该对象


methods
public_methods
private_methods
protected_methods
methods([inherited_too]) 
public_methods([inherited_too]) 
private_methods([inherited_too]) 
protected_methods([inherited_too]) 

以字符串数组的形式返回某方法能理解的 public/private/protected 方法名列表.

nil?
若receiver为nil则返回真.

respond_to?(name[, priv=false])
若对象中包含名为name的public方法时返回真.

send(name[, args ... ])
send(name[, args ... ]) { .... }
__send__(name[, args ... ])
__send__(name[, args ... ]) { ... }
调用对象的name方法,并将args传给该方法的参数,然后返回方法的结果.若是带块调用的话,也会把块原封不动地传给方法

singleton_methods
singleton_methods([inherited_too]) 
以字符串数组的形式返回该对象中定义的特殊类名的列表.

taint
设定对象的"污染标记".返回self.

tainted?
若对象已经有"污染标记"则返回真.

untaint
取消对象的"污染标记".返回self.

to_a/to_ary
将对象转换为数组并返回该数组.

to_hash
将对象隐式地转换为哈希表

to_int
将对象隐式地转换为整数

to_s/to_str
将对象转换为字符串并返回该字符串.

TAG:

 

评分:0

我来说两句

日历

« 2024-04-17  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 150341
  • 日志数: 185
  • 文件数: 6
  • 建立时间: 2007-08-06
  • 更新时间: 2015-01-06

RSS订阅

Open Toolbar