2017-10-10 190 views
0

我給大家分享一些的WebAPI請求和響應與另一支球隊。 我創建了一個包含所有接口的.Net Core 2.0項目。共享代碼,接口VS

他們問我有真正的類,而不是接口,是正確的嗎?我wolud對接口共享,而不是類

+0

通過真正的類做你的意思是他們所需要的抽象基類或做他們想做的代碼對具體的實現?對於前者,請參閱https://stackoverflow.com/questions/761194/interface-vs-abstract-class-general-oo?rq=1。原則上後者聽起來不太好。 – Rotem

+0

當你說你想分享你的意思是他們會消耗你的API或你的意思,他們正在編寫非常相似的東西,所以希望你能分享你的代碼爲出發點? – Chris

+0

請您澄清一下嗎?這個團隊在你的公司嗎?如果他們這樣做,你可能想給他們他們要求的代碼。如果沒有,請提供一些有關您的界面如何工作的完整文檔 –

回答

0

什麼是接口?

的一種接口,或協議作爲它有時被稱爲,是用於以允許不相關的對象與彼此交互,通過實施後的行爲的系統的商定的裝置。當一個類實現一個接口時,該類同意實現接口中定義的所有方法。接口是有用的,因爲它們捕獲不相關對象之間的相似性而不強制類關係。此外,接口可能由抽象方法或整個抽象類組成。一類通過使用「工具」關鍵字使用接口,以及例如可能是這樣的:

Java中的類幾乎同C++類,因爲它們定義一個抽象數據類型,有其特定的領域和方法。每個對象都是一個類的實例,並遵循類原型,該原型定義了某種類型的所有對象共有的變量和方法。與C++不同,每個類的實例必須在聲明後實例化。這通常使用關鍵字「新」來完成。

什麼是一流?

類也有從其他類繼承,因爲他們在C++做的,這意味着他們incherit父類的所有屬性。這通常使用關鍵字「extends」完成。因此,例如,具有繼承一個簡單的子類聲明從另一個類可能是這樣的:

類窗口擴展框架{}

新階級窗口,它包含了框架的所有屬性。請注意,子類不限於它們繼承的屬性,它們可以添加自己的變量和方法,甚至可以重寫繼承的方法。每個類必須有它自己的頭文件,這個頭文件在代碼的開始部分包含一個「導入」。類是Java的模塊化特性,因爲多個對象可以創建爲同一類的實例。

選擇接口