真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

C#類與結(jié)構(gòu)再次詳解-創(chuàng)新互聯(lián)

類和結(jié)構(gòu)是 .NET Framework 中的常規(guī)類型系統(tǒng)的兩種基本構(gòu)造。  兩者在本質(zhì)上都屬于數(shù)據(jù)結(jié)構(gòu),封裝著一組整體作為一個邏輯單位的數(shù)據(jù)和行為。  數(shù)據(jù)和行為是該類或結(jié)構(gòu)的“成員”,它們包含各自的方法、屬性和事件等(本主題后面列出了這些內(nèi)容)。

創(chuàng)新互聯(lián)專注于澄城網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供澄城營銷型網(wǎng)站建設(shè),澄城網(wǎng)站制作、澄城網(wǎng)頁設(shè)計、澄城網(wǎng)站官網(wǎng)定制、微信小程序開發(fā)服務(wù),打造澄城網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供澄城網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

類或結(jié)構(gòu)的聲明類似于藍圖,用于在運行時創(chuàng)建實例或?qū)ο蟆? 如果定義一個名為 Person 的類或結(jié)構(gòu),則 Person 為類型名稱。  如果聲明并初始化 Person 類型的變量 p,則 p 稱為 Person 的對象或?qū)嵗? 可以創(chuàng)建同一 Person 類型的多個實例,每個實例在其屬性和字段中具有不同的值。

類是一種“引用類型”。  創(chuàng)建類的對象時,對象賦值到的變量只保存對該內(nèi)存的引用。  將對象引用賦給新變量時,新變量引用的是原始對象。  通過一個變量做出的更改將反映在另一個變量中,因為兩者引用同一數(shù)據(jù)。

結(jié)構(gòu)是一種值類型。  創(chuàng)建結(jié)構(gòu)時,結(jié)構(gòu)賦值到的變量保存該結(jié)構(gòu)的實際數(shù)據(jù)。  將結(jié)構(gòu)賦給新變量時,將復(fù)制該結(jié)構(gòu)。  因此,新變量和原始變量包含同一數(shù)據(jù)的兩個不同的副本。  對一個副本的更改不影響另一個副本。

類通常用于對較為復(fù)雜的行為建模,或?qū)σ趧?chuàng)建類對象后進行修改的數(shù)據(jù)建模。  結(jié)構(gòu)最適合一些小型數(shù)據(jù)結(jié)構(gòu),這些數(shù)據(jù)結(jié)構(gòu)包含的數(shù)據(jù)以創(chuàng)建結(jié)構(gòu)后不修改的數(shù)據(jù)為主。

下面的示例在 ProgrammingGuide 命名空間的頂級使用三個成員定義了 MyCustomClass。  在 Program 類的 Main 方法中創(chuàng)建了 MyCustomClass 的一個實例(對象),并使用點表示法訪問該對象的方法和屬性。

namespace ProgrammingGuide
    {    // Class definition.
        public class MyCustomClass
        { // Class members:
          // Property.
            public int Number { get; set; }            // Method.
            public int Multiply(int num)
            {                return num * Number;
            }            
            // Instance Constructor.
            public MyCustomClass()
            {
                Number = 0;
            }
        }       
            // Another class definition. This one contains
            // the Main method, the entry point for the program.
        class Program
        {    static void Main(string[] args)
            {                
            // Create an object of type MyCustomClass.
                MyCustomClass myClass = new MyCustomClass();             
              // Set the value of a public property.
                myClass.Number = 27;              
                // Call a public method.
                int result = myClass.Multiply(4);
            }
        }
    }

封裝

“封裝”有時被稱為面向?qū)ο蟮木幊痰牡谝粋€支柱或原則。  根據(jù)封裝的原則,類或結(jié)構(gòu)可以指定其每個成員對于該類或結(jié)構(gòu)外部的代碼的可訪問性。  可將無意在類或程序集外部使用的方法和變量隱藏起來,以減小編碼錯誤或遭惡意利用的可能性。

有關(guān)類的更多信息,請參見類和對象。

成員

所有方法、字段、常量、屬性和事件都必須在類型內(nèi)部進行聲明;這些稱為類型的“成員”。  與其他一些語言不同的是,C# 中沒有全局變量或方法。  即使是作為程序入口點的 Main 方法也必須在類或結(jié)構(gòu)內(nèi)部進行聲明。  下表列出了可在類或結(jié)構(gòu)中聲明的所有不同種類的成員。

  • 字段

  • 常量

  • 屬性

  • 方法

  • 構(gòu)造函數(shù)

  • 析構(gòu)函數(shù)

  • 事件

  • 索引器

  • 運算符

  • 嵌套類型

輔助功能

有些方法和屬性要供類或結(jié)構(gòu)外部的代碼(稱為“客戶端代碼”)調(diào)用或訪問。  另有一些方法和屬性可能僅供類或結(jié)構(gòu)在自身內(nèi)部使用。  應(yīng)限制您的代碼的可訪問性,只允許應(yīng)當(dāng)訪問它們的客戶端代碼進行訪問,這一點十分重要。  使用訪問修飾符 public、protected、internal、protected internal 和 private 可以指定類型及其成員對于客戶端代碼的可訪問性。  默認可訪問性為 private。  有關(guān)詳細信息,請參閱 訪問修飾符。

Inheritance

類(而非結(jié)構(gòu))支持繼承的概念。  派生自另一個類(“基類”)的類將自動包含基類除構(gòu)造函數(shù)和析構(gòu)函數(shù)之外的所有公共、受保護和內(nèi)部成員。  有關(guān)更多信息,請參見繼承和多態(tài)性。

可以將類聲明為抽象類,表示該類的一個或多個方法不具有實現(xiàn)。  抽象類雖然無法直接實例化,但可以用作其他類的基類,由其他類提供缺少的實現(xiàn)。  還可以將類聲明為密封類,以禁止其他類從該類繼承。  有關(guān)詳細信息,請參閱 抽象類、密封類及類成員。

接口

類和結(jié)構(gòu)可以繼承多個接口。  從接口繼承意味著該類型要實現(xiàn)該接口中定義的所有方法。  有關(guān)詳細信息,請參閱 接口。

泛型類型

可以使用一個或多個類型參數(shù)來定義類和結(jié)構(gòu)。  客戶端代碼在創(chuàng)建類型的實例時提供類型。  例如,System.Collections.Generic 命名空間中的 List 類使用一個類型參數(shù)進行定義。  客戶端代碼創(chuàng)建 ListList 的實例來指定列表中將包含的類型。  有關(guān)詳細信息,請參閱 泛型。

靜態(tài)類型

可以將類(不是結(jié)構(gòu))聲明為靜態(tài)。  靜態(tài)類只能包含靜態(tài)成員,不能使用 new 關(guān)鍵字進行實例化。  在程序加載時,靜態(tài)類的一個副本將加載到內(nèi)存中,可通過類名稱訪問該類的成員。  類和結(jié)構(gòu)都可以包含靜態(tài)成員。  有關(guān)詳細信息,請參閱 靜態(tài)類和靜態(tài)類成員。

嵌套類型

類或結(jié)構(gòu)可以嵌套在其他類或結(jié)構(gòu)中。  有關(guān)更多信息,請參見嵌套類型。

分部類型

可以在一個代碼文件中定義類、結(jié)構(gòu)或方法的一部分,而在另一個代碼文件中定義另一部分。  有關(guān)更多信息,請參見分部類和方法。

對象初始值設(shè)定項

可以實例化和初始化類或結(jié)構(gòu)對象以及對象的集合,無需顯式調(diào)用其構(gòu)造函數(shù)。  有關(guān)更多信息,請參見對象和集合初始值設(shè)定項。

匿名類型

在不方便或沒必要創(chuàng)建命名類的情況下,例如當(dāng)使用無需保留或傳遞給其他方法的數(shù)據(jù)結(jié)構(gòu)填充列表時,可以使用匿名類型。  有關(guān)更多信息,請參見匿名類型。

擴展方法

通過創(chuàng)建一個單獨的類型,然后將該類型的方法當(dāng)作原始類型的方法來調(diào)用,可以在不必創(chuàng)建派生類的情況下對類進行“擴展”。  有關(guān)更多信息,請參見擴展方法。

隱式類型化局部變量

在類或結(jié)構(gòu)方法中,可以使用隱式類型來指示編譯器在編譯時確定正確的類型。  有關(guān)更多信息,請參見隱式類型的局部變量。

摘自:https://msdn.microsoft.com/zh-cn/library/ms173109.aspx

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


網(wǎng)頁題目:C#類與結(jié)構(gòu)再次詳解-創(chuàng)新互聯(lián)
網(wǎng)頁地址:http://weahome.cn/article/dchghj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部