檢索05 static靜態方法 和 非靜態方法

2022-05-24 03:54:09 字數 600 閱讀 9725

c#靜態變數使用static 修飾符進行宣告,在類被例項化時建立,通過類進行訪問不帶有 static 修飾符宣告的變數稱做非靜態變數,在物件被例項化時建立,通過物件進行訪問乙個類的所有例項的同一c#靜態變數都是同乙個值,同乙個類的不同例項的同一非靜態變數可以是不同的值。靜態函式的實現裡不能使用非靜態成員,如非靜態變數、非靜態函式等。

a、靜態成員函式與類相聯絡,不與類的物件相聯絡。

b、靜態成員函式不能訪問非靜態資料成員。原因很簡單,非靜態資料成員屬於特定的類例項。

類的例項化

類好比乙個模版,物件好比用這個模版製造出來的產品。 例項化就是根據模版得到產品的過程

static的方法好比模版上的東西。非static的方法好比產品上的東西。

public的方法好比不需要暴力拆開產品,就可以操作的開關。

static + public 的方法,不需要例項化,可以通過類.方法()直接訪問

static + private 的方法,不需要例項化,但是只有類內部可以訪問

non static + public 的方法,需要例項化,可以通過物件.方法()直接訪問

non static + private 的方法,需要例項化,只能通過類內部訪問

static 靜態方法

乙個不需要任何主叫物件的方法就是靜態方法。靜態方法需要關鍵字static來宣告於定義,他不需要主叫物件,因為它不屬於物件而是屬於類。靜態方法可以被子類繼承,也可以被重寫,但是不能實現多型性。多型性的實現重點在於動態繫結,每一次在呼叫相應方法的時候都是去動態查詢匹配,靜態方法是在類初次載入的時候就已經...

static靜態方法

static也可以修飾方法,使之成為靜態方法,我們通常用的入口函式,也就是main方法就是乙個靜態方法。注意事項 靜態方法可以直接呼叫靜態變數,不能呼叫非靜態成員變數。public class helloworld 2.可以通過建立類的物件來呼叫非靜態成員 public class hellowor...

static 靜態方法

靜態變數 原理就是共享資料段,只要沒有進行 寫入 操作就不會產生問題,但是資料通常都是用於讀和寫所以靜態變數要注意使用 什麼時候用靜態的方法 一般靜態物件適合物件無狀態的情況 或唯讀的狀態 而又頻繁使用的資料,比如連線字串,配置資訊等,而例項化適合物件有狀態的情況 變化的狀態 如 使用者類物件狀態經...