您好,登錄后才能下訂單哦!
1.Moudle的方法
undef_method(),會刪除所以的方法,包括繼承來的的方法。
remove_method(),只會刪除接受者自己的方法。
2,單件方法
所謂的單件方法就算特定對象的特有方法,ruby中的類也是對象,所以類方法就是單件方法。
例如:
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)"
這個挺容易理解,呵呵!
3.Moudle#class_evel()方法會在一個已存在的類的上下文中執行一個塊
def add_method_to(a_class) a_class.class_eval do def m; "hello" ; end end end add_method_to String "abc".m #=> "hello"
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。