新聞中心
這里有您想知道的互聯網營銷解決方案
Ruby重載知識講解
Ruby語言作為一種新興的編程語言,廣大編程語言都對其保佑非常大的好奇心。在這篇文章中我們將會認識到Ruby重載的一些知識。#t#

創(chuàng)新互聯公司是一家專注于網站建設、網站設計與策劃設計,彭州網站建設哪家好?創(chuàng)新互聯公司做網站,專注于網站建設十載,網設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:彭州等地區(qū)。彭州做網站價格咨詢:18980820575
在子類里,我們可以通過Ruby重載父類方法來改變實體的行為.
- 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 Student1
- | def identify
- | print "I'm a student.\n"
- | end
- | end
- nil
- ruby> Student1.new.identify
- I'm a student.
- nil
如果我們只是想增強父類的 identify 方法而不是完全地替代它,就可以用 super進行Ruby重載.
- ruby> class Student2
- | 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 也可以讓我們向原有的方法傳遞參數.這里有時會有兩種類型的人...
- ruby> class Dishonest
- | 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 Honest
- | def train_toll(age)
- | super(age) # pass the
argument we were given- | end
- | end
- nil
- ruby> Honest.new.train_toll(25)
- Normal fare.
- nil
以上就是對Ruby重載的相關知識介紹。
名稱欄目:Ruby重載知識講解
轉載來源:http://m.5511xx.com/article/cdiogio.html


咨詢
建站咨詢
