C 整理 關於類

2022-07-19 02:57:19 字數 1389 閱讀 4232

一:類的訪問許可權

1,內部類:預設情況下,類的宣告是內部的,即只有當前專案中的**才能訪問它。也可以用internal訪問修飾符關鍵字進行顯示指定。

internal

class

myclass

2,公共類:用public指定類是公共的,即可以在其他專案的**中訪問,但在其他專案中訪問時別忘了用using把命名空間引入。

3,c#裡類及類成員的修飾符有以下五個如下:

public   :公開 類及類成員的修飾符 對訪問成員沒有級別限制

private : 類私有成員的修飾符 只能在類的內部訪問,它的派生類也沒有訪問許可權;

protected :類a中定義為protected型別的成員只有在類a中和在繼承類a的派生類中才能進行訪問

//這是錯誤的

public

class

action

class

tester

}

這是對的:

public

class

action

}

public class action2 : action

}

class

tester

}

internal 類a中定義為internal型別的成員可以被類a所在程式集中的任何類的方法訪問;

二:類的型別

1,抽象類(abstract)

抽象類:不能例項化,只能繼承,可以有抽象成員,也可以有非抽象成員,(但是如果有抽象成員的類,該類一定要定義成抽象類)。

抽象類也有公共抽象類和內部抽象類之分;

注意:當抽象類的派生類沒有用 override從寫其方法時,此派生類也要定義成抽象類;不能用呢new來重新抽象類的方法,但可以用new來寫虛擬的方法;

三:類的繼承

1,用sealed關鍵字進行密封(不能被繼承)

2,基類的許可權要比派生類的寬鬆才能被派生類繼承,如:內部類可以繼承公共基類,但是基類不能內部類

//下面程式是不合法,不能編譯的

internal

class

classbase

public

class

myclass : classbase

四:類的方法定義

1,五個關鍵字

virtual——方法可以重寫(也叫虛擬方法)

abstract——方法必須在非抽象類的派生類中重寫(中能用與抽象類中)

override——方法重寫了乙個基類方法()

extern——方法定義放在其他地方

sealed——指定這個方法不能由派生類重寫()

Lua 關於類的理解整理

1.lua 是過程式的語言,本身沒有類的概念。但是lua 是用c實現的,本身很多東西可以拓展,類也是一樣的。2.在lua中,有乙個表的東西,本質上是乙個hashmap,key value 鍵值對這種,如果在map中找不到這個值,就會觸發lua表的一套查詢機制,正是通過這個查詢機制,來實現 類 的操作...

C 類 物件資料整理

定義乙個類,本質上是定義乙個資料型別的藍圖。這實際上並沒有定義任何資料,但它定義了類的名稱意味著什麼,也就是說,它定義了類的物件包括了什麼,以及可以在這個物件上執行哪些操作。類有兩個特性 乙個是繼承,乙個是封裝。類定義是以關鍵字class開頭,後跟類的名稱。類的主體是包含在一對花括號中。類定義後必須...

C 類與物件整理

類和物件 1.struct與class唯一區別 在於預設訪問許可權不同 struct為public,class為private 2.構造與析構函式 初始化和清理 建構函式 類名 函式可以有引數,可以發生過載 析構函式 類名 不可以發生過載,析構 將堆區開闢資料做釋放操作。3.類名加 建立乙個匿名物件...