一.繼承中基類和子類的特徵:
1.c#不支援多重繼承,支援多重介面繼承
2.c#子類只有乙個基類,乙個父類可以有多個子類
3.不允許迴圈繼承(相互繼承)
4.繼承可以個隔代繼承
5.子類可以繼承父類的可繼承屬性和函式
6.繼承只能單繼承
二.繼承和封裝的定義
1.繼承:繼承允許我們通過乙個類定義另乙個類,建立和維護應用程式更加方便,有利於重用**和節省開發時間。
2.封裝:通過訪問修飾符,把乙個或多個專案封閉邏輯包,訪問修飾符限制了類成員和訪問限制,使用起來更加方便,安全的過程。
三.訪問修飾符
1.public 公開的 訪問範圍:同一類,同一序集不同類,不同程式集下的類
2.protected保護的 訪問範圍:同一類,具有血緣關係的派生類
3.internal 類的預設訪問修飾符就是internal 訪問範圍:同一類,同一程式集下的類。
4.internal protected 或者protected internal 訪問範圍:兩者訪問範圍
5.private 類成員的預設訪問修飾符 訪問範圍:類自身
四.有哪些封裝
1.類自身就是封裝
2.屬性封裝
3.函式封裝
五.過載(overload)和重寫(override)定義
1.過載:在同乙個類中,方法名稱相同,引數列表不同(引數個數不同,引數型別不同,不同型別的排列順序不同),稱為方法的過載,方法的過載不包含繼承關係,過載不用考慮方法的返回值型別
2.重寫:在父類中有個方法,子類也需要這個方法名稱,但子類中的方法邏輯與父類的方法邏輯不同,則需要對子類進行重寫。
六.裝箱和拆箱
裝箱:值型別轉換成引用型別
拆箱:引用型別轉換成值型別,前提先裝箱
七.抽象和虛擬
1.抽象:c#使用abstract建立抽象類,用於提供介面的部分類的實現。當乙個派生類繼承自該抽象類時,實現即完成。抽象類包含抽象方法,抽象方法可被派生類實現。派生類具有更專業的方法 繼承抽象類,則必須實現抽象函式,實現=重寫抽象函式
抽象類注意的事項:
(1)不能建立乙個抽象類的例項
(2)不能在抽象類外部宣告乙個抽象方法
(3)抽象函式只能抽象類內部宣告,無法在正常類中使用
(4)抽象類中可以宣告正常函式
虛擬類注意的事項:
2.虛擬:當有個定義在類中函式在繼承中實現時,可以使用虛方法。虛方法使用關鍵字virtual宣告。虛方法可以在不同的繼承類中不同的實現,對虛方法的呼叫是在運用時發生。
(1)虛擬類其實指的是正常類中的虛擬方法,所以虛擬類可以直接使用例項
(2)虛擬方法是在方法前加virtual關鍵字
(3)虛函式和正常函式無區別
(4)子類繼承虛擬類可以實現虛擬方法也可以不實現虛擬方法。實現=重寫方法
八.靜態static使用應該注意的地方
1靜態類中的成員必須是靜態成員。
2.非靜態類中的成員可以是靜態成員,可以使非靜態成員。
3.乙個靜態的函式內部只能使用該函式外部的靜態成員。
4.乙個類中公開靜態成員,在另乙個類中可以直接使用類名點的形式呼叫這個成員
Linux高階程式設計知識點(1)
linux高階程式設計 1 unix linux系統江湖傳言 檔案之才,得之可得天下 這也是採用檔案系統管理硬體裝置的原因。之前的linux基礎篇主要是了解linux的基礎命令和工作原理 而高階篇涉及到socket程序通訊等重要的知識,話不多說,一起去挖寶吧!1.裝置和檔案 linux採用檔案系統管...
C 程式設計小知識點
1 this指標可指向常量型資料 可指向成員函式,不可以指向靜態成員函式。this指標始終指向呼叫成員函式的物件。2 巨集定義語句 define bufsize 100 const int bufsize 100 3 模板類的基類和派生類都可以是模板類或非模板類。4 類a宣告為類b的友元後,類a直接...
C 程式設計知識點彙總
15 多型 16 虛函式 物件導向程式設計是將物件抽象成類,把類的資料與操作封裝在一起而進行的程式設計。優點 易維護 提高 復用率 用於不同引數型別獲引數數目不同時 inline 在被呼叫的每乙個地方都插入它的乙份拷貝,適用於小函式。全域性靜態變數 作用域在本檔案中,程度執行期間一直存在。區域性靜態...