主頁 > 知識庫 > rudy 重載方法 詳解

rudy 重載方法 詳解

熱門標簽:征服者企業(yè)地圖標注 漯河電銷 中牟外呼系統(tǒng)違法嗎 淮安自動外呼系統(tǒng)供應商 柯城手機地圖如何做地圖標注 巫師3地圖標注魔力之所 天津外呼系統(tǒng)怎么收費 外呼線路從哪里出來的 AI電銷機器人 線路
在子類里,我們可以通過重載父類方法來改變實體的行為.

ruby> class Human
    |   def identify
    |     print "I'm a person.\n"
    |   end
    |   def train_toll(age)
    |     if age  12
    |       print "Reduced fare.\n";
    |     else
    |       print "Normal fare.\n";
    |     end
    |   end
    | end
   nil
ruby> Human.new.identify
I'm a person.
   nil
ruby> class Student1Human
    |   def identify
    |     print "I'm a student.\n"
    |   end
    | end
   nil
ruby> Student1.new.identify
I'm a student.
   nil  


如果我們只是想增強父類的 identify 方法而不是完全地替代它,就可以用 super.

ruby> class Student2Human
    |   def identify
    |     super
    |     print "I'm a student too.\n"
    |   end
    | end
   nil
ruby> Student2.new.identify
I'm a human.
I'm a student too.
   nil  


super 也可以讓我們向原有的方法傳遞參數(shù).這里有時會有兩種類型的人...

ruby> class DishonestHuman
    |   def train_toll(age)
    |     super(11) # we want a cheap fare.
    |   end
    | end
   nil
ruby> Dishonest.new.train_toll(25)
Reduced fare. 
   nil

ruby> class HonestHuman
    |   def train_toll(age)
    |     super(age) # pass the argument we were given
    |   end
    | end
   nil
ruby> Honest.new.train_toll(25)
Normal fare. 
   nil   

標簽:大慶 河池 克拉瑪依 內(nèi)江 棗莊 西雙版納 南昌 甘孜

巨人網(wǎng)絡通訊聲明:本文標題《rudy 重載方法 詳解》,本文關鍵詞  rudy,重載,方法,詳解,rudy,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《rudy 重載方法 詳解》相關的同類信息!
  • 本頁收集關于rudy 重載方法 詳解的相關信息資訊供網(wǎng)民參考!
  • 推薦文章