2014-05-15 52 views

回答

2

基本概念是代碼重用。在.NET中通過接口和抽象/基類實現多態性。假設你有一個Cat類,它有一個輸出「MEOW!」的Speak()方法。並說你在你的應用程序中使用這個類作爲類型Cat。現在,如果有一天您需要使用Dog班級替換所有帶有Dogs的貓,該班級擁有輸出「WOOF!」的Speak()方法。您將要進行大量的手動工作來將Cat的所有實例替換爲Dog。如果您需要一種可以讓CatDog說話的方法?那麼你需要大量的複製粘貼鍋爐冗餘代碼。

想象一下,您代碼Cat : ISpeakDog : ISpeak其中ISpeak是一個暴露Speak()方法的接口。現在,您根本不需要返工,只要對所有類型聲明使用接口類型,就可以愉快地在Cat,Dog和其他可以說話的事情之間切換。

+0

謝謝,我明白了! – user2294616

相關問題