從零開始學C 介面

2022-06-05 11:54:12 字數 898 閱讀 6194

這一章的內容比較難,學這個的前提是你已經掌握了c#的基本語法,了解什麼是繼承,什麼是物件導向。

有了這個之後,我會盡量用最簡單通俗的語言去梳理整個知識,衝衝衝!!!

假設我們現在有乙個u盤類,mp4類,

class mp4

}class udisk

}

這是我們宣告乙個usb插口類

規定實現介面的類必須實現對應的函式和屬性。

如果在實現介面的類中,沒有宣告和實現介面中所有的方法和屬性,編譯器就會提示錯誤。

這個說法可能比較抽象,我們接下來舉例子繼續詳細說明。

可以規範類的結構。

既然介面規定了類不惜實現哪些方法和屬性,那我們可以通過這個一特性把一些必須實現的方法和屬性寫成介面,然後讓類繼承,這樣可以避免對應的類丟失某些必要的介面。

舉個例子,現在我們要建立乙個類-『人』。

人有什麼類別?亞洲人,歐洲人,非洲人等,但是這些類都有共同的屬性,例如有四肢,有五官之類的,這些都是必須的,所以加上介面進行規範。

這樣的話,通過宣告乙個父類不就行了,把需要實現的方法和屬性都以虛函式的方式在這個類中實現,然後子類繼承父類,這不就讓子類有了必須有的方法和屬性了嗎?其實這就要說到介面的真正用法。

讓乙個類可以完成多個任務,而不依賴於繼承。

繼承還帶來很多額外的負擔,你必須繼承每乙個方法、屬性和字段,而不只是與特定任務有關的那些成員。

介面做為引數傳遞,傳遞的是實現了介面的物件;

介面作為型別返回,返回的是實現了介面的物件。

介面都是預設public,無需訪問修飾符。

介面無法例項化。

介面並不可以避免重複**。因為介面本身沒有方法和屬性的實現,一切都必須由實現它的類去完成所有**。

介面可以繼承其它介面

2019 10 14從零開始學C

環境 visual studio 2019 開始第乙個c 新建專案 新建項 f5執行 1 標頭檔案 include用於申明iostream類中的函式和外部資料,iostream包自動定義乙個名為count的變數 物件 它接受所有與標準輸出繫結的資料。操作符 將資料傳送到標準輸出 c 允許操作符過載 ...

從零開始學C語言

從零開始學c語言 閬苑祁寒 更新說明 此版本是最終版本。初始版本有關helloworld的內容調到了附錄部分。寫在前面 本文從乙個初學者的角度,給出了對c語言的簡單理解。最近一次更新調整了之前的敘述方式。目錄part1 從hello world講起 part2 知識結構梳理 part3 一路走來的習...

零開始學python 從零開始學Python

第1章 python入門 1 1 1 什麼是python 1 1 2 python語言有什麼特點 2 1 3 python可以幹什麼 4 練一練 5 第2章 準備開發環境 6 2 1 在windows上安裝python開發環境 6 2 2 選擇和安裝開發工具 11 練一練 17 第3章 基本概念 1...