2014-06-13 49 views
1

在我的兩個進程的功能中,有一個共同的函數來合併文件。我不需要堅持任何進程來使用一些接口方法。而且,這兩個過程也是獨立的。所以,我很喜歡抽象類,並且在抽象類本身中有實現嗎?另外我不需要任何抽象方法。在抽象類和接口之間進行選擇

+0

你可以建議一些答案和downvote? – Harbinger

回答

0

當子類和基類之間存在IS-A關係時,使用繼承。我認爲這不是這種情況。你沒有指定語言,但從你的配置文件,我想你使用Java。因此,如果您使用抽象類,將來無法繼承其他更適合的類。您可以使用組合。這意味着您將創建一個具有此方法合併文件的常規文件合併類。而在你想擁有這個功能的類中,你只需實例化這個新的文件合併類。它可以讓你在未來繼承其他類。

如果你想告訴世界這些類可以合併文件(使用多態性),並且你使用Java 8,你可以在接口中創建default方法,並實現這個接口而不用重寫這個默認方法。但我認爲在這種情況下作文會更好。