C 高階程式設計知識點

2021-09-25 03:42:46 字數 1705 閱讀 7454

一.繼承中基類和子類的特徵:

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 在被呼叫的每乙個地方都插入它的乙份拷貝,適用於小函式。全域性靜態變數 作用域在本檔案中,程度執行期間一直存在。區域性靜態...