[学习笔记]c#Primer中文版-类设计、static成员、const和readonly数据成员
生活随笔
收集整理的這篇文章主要介紹了
[学习笔记]c#Primer中文版-类设计、static成员、const和readonly数据成员
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
類的構成:公開操作和屬性;非公開實現細節。
??????? 類的設計:1、確定類能執行的操作集,這些操作將成為類的成員函數。
??????????????????????????? 2、確定每個成員函數的接口(返回類型,參數列)。
??????????????????????????? 3、確定每個函數訪問級別。
???????? static數據成員在整個程序中只存在唯一一份實體。在class成員函數中訪問static成員的語法和訪問instance成員的語法完全一致。如果在class本體之外,我們可以通過static成員所隸屬的class名稱來直接訪問。注意:因此不能通過class的一份object來訪問static成員。
????????每一個class至多只可以定義一個static構造函數,并且不允許增加訪問級別關鍵字,參數列必須為空。
????????為了不違背編碼規則,通常把static數據成員聲明為private,然后通過statci property提供讀寫訪問。
????????
????????定義:const 關鍵字用于修改字段或局部變量的聲明。它指定字段或局部變量的值不能被修改。常數聲明引入給定類型的一個或多個常數。
???????? const數據成員的聲明式必須包含初值,且初值必須是一個常量表達式。因為它是在編譯時就需要完全評估。
??????? const成員可以使用另一個const成員來初始化,前提是兩者之間沒有循環依賴。
??????? readonly在運行期評估賦值,使我們得以在確保“只讀訪問”的前提下,把object的初始化動作推遲到運行期進行。
??????? readonly 關鍵字與?const 關鍵字不同。const 字段只能在該字段的聲明中初始化。readonly 字段可以在聲明或構造函數中初始化。因此,根據所使用的構造函數,readonly 字段可能具有不同的值。另外,const 字段是編譯時常數,而 readonly 字段可用于運行時常數。
??????? 類的設計:1、確定類能執行的操作集,這些操作將成為類的成員函數。
??????????????????????????? 2、確定每個成員函數的接口(返回類型,參數列)。
??????????????????????????? 3、確定每個函數訪問級別。
???????? static數據成員在整個程序中只存在唯一一份實體。在class成員函數中訪問static成員的語法和訪問instance成員的語法完全一致。如果在class本體之外,我們可以通過static成員所隸屬的class名稱來直接訪問。注意:因此不能通過class的一份object來訪問static成員。
????????每一個class至多只可以定義一個static構造函數,并且不允許增加訪問級別關鍵字,參數列必須為空。
????????為了不違背編碼規則,通常把static數據成員聲明為private,然后通過statci property提供讀寫訪問。
????????
????????定義:const 關鍵字用于修改字段或局部變量的聲明。它指定字段或局部變量的值不能被修改。常數聲明引入給定類型的一個或多個常數。
???????? const數據成員的聲明式必須包含初值,且初值必須是一個常量表達式。因為它是在編譯時就需要完全評估。
??????? const成員可以使用另一個const成員來初始化,前提是兩者之間沒有循環依賴。
??????? readonly在運行期評估賦值,使我們得以在確保“只讀訪問”的前提下,把object的初始化動作推遲到運行期進行。
??????? readonly 關鍵字與?const 關鍵字不同。const 字段只能在該字段的聲明中初始化。readonly 字段可以在聲明或構造函數中初始化。因此,根據所使用的構造函數,readonly 字段可能具有不同的值。另外,const 字段是編譯時常數,而 readonly 字段可用于運行時常數。
轉載于:https://www.cnblogs.com/pfengk/archive/2006/01/11/315050.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的[学习笔记]c#Primer中文版-类设计、static成员、const和readonly数据成员的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 这些解决 Bug 的套路,你都会了不?
- 下一篇: 技术女性的是是非非(2)