Singleton method

来源:互联网 发布:iris网络嗅探器下载 编辑:程序博客网 时间:2024/06/05 10:35

Singleton method

RubySingleton method是属于某一个对象的方法,而不是属于某一个类。在ruby中每一个类都Class类的对象,因此一个类的类方法(Class method)也可以看作是一个Singleton method。我们定义类方法的语法是在方法名前加上类名并用点号(.)隔开。而我们定义一个对象的Singleton method的方法是在方法名前加上对象名,例如:

def objectName.objectSingletonMethod

end

上面定义的objectSingletonMethod方法只属于objectName对象,objectName对象所属的类的其它对象不具有该方法。

Singleton class

它是一个匿名类,自己依附在某个对象上,类中定义的所有方法都是所依附的对象的singleton method。语法如下:

ob =MyClass.new

class << ob

def abc

puts "abc"

end

end

ob是一个对象,在class关键字和ob之间加一个"<<"符号,后面定义Singleton Class中的方法。

原创粉丝点击