C 學習筆記(一) 類

2021-04-02 19:05:36 字數 1669 閱讀 7082

c#

使用關鍵字

class

來定義類。其基本結構如下:

class myclass

定義這樣乙個類後,就可以在能訪問該定義的工程的其他地方對該類進行例項化。

預設情況下,類宣告為內部的,即只有當前工程中的**才能訪問它。

可以用internal

訪問修飾符關鍵字顯式指定,但這不是必須的,類在定義時預設為此型別的類。

如果將類指定為公共的,應可以由其他工程中的**來訪問。使用關鍵字

public

。(注:這種方式宣告的類不能是私有的

private

或受保護的

protected

。可以把這些宣告類的修飾符用於宣告類成員。)

還可以指定類是抽象的或密封的。

1.抽象

abstract

:不能被例項化,只能繼承,可以有抽象成員。

宣告方式如下:

public

abstract

class myclass

可以是乙個公共抽象類,也可以是乙個內部抽象類。 2

.密封sealed

:不能繼承。

宣告方式如下:

public

sealed

class myclass

與抽象類一樣,密封類也可以是公共或內部的。

可以在類定義中指定繼承。在定義類時在類名後面加上乙個冒號,其後是基類的名稱。

public

class myclass : mybase 在

c#中有乙個規定:編譯器不允許派生類的可訪問性比其基類更高。也就是說,內部類可以繼承於乙個公共類,但公共類不能繼承於乙個內部類。

合法的:內部類繼承公共類

public

class mybase

internal

class myclass : mybase

不合法的:公共類繼承內部類(編譯器會說可訪問性不一致)

internal

class mybase

public

class myclass : mybase

如果沒有使用基類,被定義的類則只繼承於基類

system.object

(它在c#中的別名是object)

除了以這種方式指定基類外,還可以在冒號的後面指定支援的介面。如果指定了基類,它必須緊跟在冒號的後面,之後才是指定的介面。如果沒有指定基類,則介面就跟在冒號的後面。使用逗號分隔基類名

(如果有基類

)和介面名。可以指定多個介面,以逗號分隔即可。

類定義中可以使用的訪問修飾符組合

none

orinternal

類只能在當前工程中訪問

public

類可以在任何地方訪問

abstract

orinternal abstract

類只能在當前工程中訪問,不能例項化,只能繼承

public abstract

類可以在任何地方訪問,不能例項化,只能繼承

sealed

or internal sealed

類只能在當前工程中訪問,不能派生,只能例項化

public sealed

類可以在任何地方訪問,不能派生,只能例項化

C 基礎筆記(一) 類

通常會將類的定義和其成員函式的定義分開 1.類定義 標頭檔案,宣告檔案 看成是類的外部介面,一般寫成.件。class 類名 2.類的成員函式定義 原始檔 看成是類的內部實現,一般寫成.cpp檔案。返回值 類名 函式名 引數列表 如果函式的前面沒有用 類名 編譯器認為該函式是全域性函式 普通函式 類作...

2023年C 學習筆記之一 類

c 學習筆記之一 類 1.class 其成員預設是私有的 struct 其成員預設是共有的 2.static 成員只有唯一的乙份副本 3.拷貝建構函式 x x const x 4.如果在乙個類的外面定義 const 成員函式,需要給出 const 字尾 inline int date year co...

C 學習(一) 類與物件

大二時學校開過物件導向程式設計 c 語言 的課,使用的是清華大學出版社,李愛華 程磊主編的教材。近兩年在學習和專案中一直使用c,對於c 已經忘記得差不多了。如今大四畢業之際開始學習qt開發上位機,需要用到c 使用原教材再次學習一次。類與物件是c 中兩個基本的概念。可以理解類是資料型別,物件是類定義的...