ruby的單例方法

2021-08-27 12:55:13 字數 676 閱讀 9250

=begin

在ruby裡,可以給具體的例項物件新增例項方法,這個方法只屬於這個例項

物件,我們把這樣的方法稱之為單例方法。

單例方法也叫作單件方法。定義單例方法,首先要生成乙個例項物件,其次,

要在方法名前加上物件名和乙個點號「.」。

在下面示例中,物件p1不可以laugh , laugh方法只屬於p2物件。

例項方法,屬於類的每個例項物件。單例方法只出現在單個例項物件中。用單

例方法可以極大地豐富多型性在ruby中的表現力。

=end

class person

def talk

puts "hi! "

end

end

p1=person.new

p2=person.new

p1.talk

p2.talk

def p2.talk #定義單例方法p2.talk

puts "here is p2. "

end

def p2.laugh #定義單例方法p2. laugh

puts "ha,ha,ha... "

end

p1.talk # hello!

p2.talk # here is p2.

p2.laugh # ha,ha,ha...

ruby的單例方法

begin 在ruby裡,可以給具體的例項物件新增例項方法,這個方法只屬於這個例項 物件,我們把這樣的方法稱之為單例方法。單例方法也叫作單件方法。定義單例方法,首先要生成乙個例項物件,其次,要在方法名前加上物件名和乙個點號 在下面示例中,物件p1不可以laugh laugh方法只屬於p2物件。例項方...

Ruby的單例方法的疑惑

class b class puts old endend endclass def hello puts new endend endb.hello 執行結果為new class b class puts old endend endclass def hello puts new endend ...

ruby中的單例模式

引入檔案singleton,引入模組singleton require singleton class singletontest attr accessor data include singleton enda singletontest.instance b singletontest.ins...