您好,登錄后才能下訂單哦!
1.Moudle的方法
undef_method(),會(huì)刪除所以的方法,包括繼承來(lái)的的方法。
remove_method(),只會(huì)刪除接受者自己的方法。
2,單件方法
所謂的單件方法就算特定對(duì)象的特有方法,ruby中的類也是對(duì)象,所以類方法就是單件方法。
例如:
class A def method_a "this is a method" end end aa = A.new bb = A.new aa.method_a #=>"this is a method" bb.method_a #=>"this is a method" def aa.method_b "this is b method" end p aa.method_b #=>"this is b method" p bb.method_b #=>"undefined method `method_b' for #<A:0x9a242a8> (NoMethodError)"
這個(gè)挺容易理解,呵呵!
3.Moudle#class_evel()方法會(huì)在一個(gè)已存在的類的上下文中執(zhí)行一個(gè)塊
def add_method_to(a_class) a_class.class_eval do def m; "hello" ; end end end add_method_to String "abc".m #=> "hello"
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。