我仍然無法弄清楚如何使一個子類的構造遵循其父...
例如:在ruby中繼承initialize()方法?
require 'mechanize'
class Scraper
attr_accessor :agent
def initialize
# I dont know if using instance variable is the right thing to do
@agent = Mechanize.new
end
end
class ScraperA < Scraper
end
我要讓ScraperA
跟隨它的父類的構造行爲,
是 實例化一個Mechanize對象沒有我重新輸入Mechanize.new
在 ScraperA initialize()方法。這可能嗎 ?
只想遵循DRY原則,但紅寶石讓我很難?
希望不要,也許這只是我的無知。 期待着簡單的解決方案,Tnx。
編輯:
事實證明,我有空initialize()方法中ScraperA,其覆蓋默認 初始化()。 所以是這個例子工作,因爲沒有空的初始化方法。 對不起,我的愚蠢。 Tnx。
您的代碼按照您的要求工作。如果您已經嘗試完全運行該代碼,可能是因爲您使用的是過時的Ruby版本。 – Adrian 2010-07-12 15:47:09
@Adrian:我認爲沒有任何版本的ruby無法正常工作。 – sepp2k 2010-07-12 15:48:13
這是爲什麼關閉爲'太本地化'? – 0112 2014-09-11 23:11:14