目錄
7.1 常量
7.2 字段
常量是值從不變化的符號。定義常量符號時,它的值必須能在編譯時確定。確定後,編譯器將常量值儲存到程式集元資料中。意味著只能定義編譯器可以識別的基元型別常量。然而c#也可以定義非基元型別的常量變數,前提是把值設為null。
基元型別有:boolean,char,byte,sbyte,int16,int32,int64,uint16,uint32,uint64,single,double,decimal,string
由於常量值不變化,所以常量總是被視為型別定義的一部分。常量總是被視為靜態成員,而不是例項成員。定義常量將導致川建立元資料。
**引用常量符號時,編譯器在定義常量的程式集的元資料中查詢該符號,提取常量的值,將值嵌入生成的il**中。由於常量的值直接其嵌入**,所以在執行時不需要為常量分配任何記憶體。除此之外,不能獲取常量的位址,也不能以傳引用的方式傳遞常量。這些限制意味著常量不很好的支援跨程式集的版本控制。因此,只有確定乙個符號的值從不發生變化才應定義常量。
欄位時一種資料成員,其中容納了乙個值型別的例項或者對乙個引用型別的引用。
clr術語
c#術語
說明static
static
這種欄位時型別狀態的一部分,而不是物件狀態的一部分
instance
預設這種欄位時與型別的乙個例項關聯,而不是與型別本身關聯。
initonly
readonly
這種字段只能由乙個構造器方法中的**寫入
volatile
volatile
編譯器,clr和硬體不會對訪問這種欄位的**執行」執行緒不安全「的優化措施,
由於字段儲存在動態記憶體中,所以它們的值在執行時才能獲取。
第七章 常量和字段
字段修飾符 const 常量的值時在編譯時確定的,被視為型別的一部分,是靜態成員.會導致建立元資料.引用這個常量時會把這個值直接嵌入il 中.static 靜態字段,型別的一部分,占用的記憶體是在型別物件中分配的.型別物件時在該型別第一次被訪問到的時候載入的.對於例項欄位則是在建立例項時分配的.而且...
第七章 建立計算字段
本章介紹計算字段,如何建立以及從應用程式使用別名引用它們 1.我們需要直接從資料庫中檢索出轉換 計算或格式化過得資料。2.字段 field 基本上與列 column 的意思相同,經常互換使用,不過資料庫列一般稱為列,而術語字段通常用在計算欄位的連線上。3.拼接字段 拼接 concatenate 將值...
python第七章 python教程(第七章)
字典和集合 字典是python中唯一,乙個對映型別 如何建立乙個字典,如下 dict dict 滲透 網路安全 怎麼理解字典呢?現實生活中的字典可以通過首字母進行查詢要查詢的漢子,python也可以這樣理解,通過 前的元素查詢到冒號後的元素。為什麼說字典是唯一乙個對映型別呢?看圖。對映型別區別與序列...