2011-05-09 55 views
1

是否可以擴展基類以包含其他命令?例如,可以說我有一個支持一個名爲「WUNTEE」命令定製的IMAP服務器......我想用專用的Net :: IMAP :: send_command方法來發送「WUNTEE」,但由於其私有的,怎麼會那可能嗎?這甚至可能嗎?謝謝。Ruby:擴展Net :: IMAP以包含其他命令?

回答

0

您可以繼承它的要求,這是完全可以接受的,或者你想要的新方法修補基類。從設計的角度來看,子類是一種更清潔的方法,但是您可能會發現其他一些相關的類直接使用Net :: IMAP,並讓它們使用您的特定版本是棘手或不切實際的。

這其實很直接的修補任何你不自己實現通過簡單地重新定義它們在任何時候在你的程序的執行方法等。