91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c#類中字段、行為和屬性的示例分析

發布時間:2021-11-24 14:48:23 來源:億速云 閱讀:245 作者:小新 欄目:編程語言

小編給大家分享一下c#類中字段、行為和屬性的示例分析,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

一、c#的值類型和引用類型

    1、值類型有:結構體(數值類型,如int之類;bool型,用戶定義的結構體),枚舉類型,可控類型。值類型存在棧上。

    2、引用類型:數組,用戶定義的類,接口,委托,object,字符串。引用類型存在堆上。

(內存塊分為棧,堆,靜態存儲區)

    3、幾點說明:

        (1)結構體中即使包含了引用類型的成員,也依然是值類型。

        (2)數組的元素,不管是引用類型的還是值類型的,都存在托管堆上。

        (3)值類型總是分配在申明它的地方,作為字段時,跟隨其所屬的變量(實例)存儲,作為局部變量時存儲在棧上。

        (4)值類型在內存管理上具有更好的效率,并且不支持多態,適合做存儲內型載體;引用類型支持多態,適合用于定義應用程序的行為。

二、c#類的訪問控制:

    public ,protect ,private ,internal,protect internal
    public 公共的,任何其他的對象都能訪問,子類繼承了,其他對象子類該屬性的訪問性由子類的訪問性決定
    protect 受保護的,子類能繼承,其他類不能直接訪問
    private,子類繼承了,但是子類里面是不可訪問的,其他對象也不能訪問
    internal,是說在同一個程序集中可以訪問
    protect internal同一個程序集內部的子類可以繼承,其他類不能訪問

系統默認是私有的。

三、類的字段,方法,和屬性

類是面向對象編程的基本單位,類的成員包括事件、字段、嵌套類型、方法和屬性。作為初學者,我們首先得了解類的成員中的字段,方法和屬性。

1、類的字段。類的字段準確地說應該是類的數據成員,其定義是:用于存儲類和類的實例相關數據的變量。

2、類的方法。方法也稱行為,是類的函數成員,是一個為實現類的某一個特定功能的函數。

3、類的屬性。所謂“屬性”,很大程度可以看作是對“字段”的一種封裝,它利用一種被稱為“get/set訪問器”分別控制對字段的讀寫操作,并暴露一個屬性值。

下面我們舉一個例子來說明屬性的作用。

Class Student

{

 //數據成員或者字段的定義
    public string name ;

private string accnumber;//這里,我們本來把學生的帳號定義為私有     

                         //的,是不能被繼承和訪問的。

//屬性的定義
    public string Accnumber

{                     

    Get                  

{                    

return name;      

Set                   

{

accnumber = value;

}

  }

...

        //這里,我們利用屬性,通過get訪問器,外界就可以讀到accumber的值;通過set訪問器,我們就可以給accumber賦新值。在子類和其他類中我們可以把Accnumber看作是accnumber的替身,如: Student std = std.Accnumber = “s001”,我們就成功的給accnumber賦了值“s001”。

當然屬性里不是get和set都要用的,當我只要讀accnumber的值而不要改變其值的時候,只要用get訪問器就可以了。以后我們會介紹readonly訪問修飾符,它控制變量只能被讀而不能被寫。

上面這個例子中,get就是取值,set就是設值。在set里,我們還可以加一些限制、選擇條件什么的,比如if(value.Length==4){accnumber = value};

        字段是一個用于存儲數據的變量,屬性是一個方法或者說是一個函數成員。那么既然屬性是一個方法,那么他和方法的區別是什么呢?從定義就可以看出來,屬性其實本身就是方法。但既然把屬性和方法定義成為兩個概念,那么他們之間肯定有不同地地方。個人感覺,他們最大的區別首先是屬性沒有參數列表,而方法必須要有參數列表,哪怕沒有參數,也要放一個空括號在那。其次,屬性定義里要有set和get兩個訪問器,用于獲得屬性的值和設定屬性的值其余的地方沒有發現不同之處,屬性里也可以判定數據的合法性,和方法沒有什么兩樣。

看完了這篇文章,相信你對“c#類中字段、行為和屬性的示例分析”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

青铜峡市| 永吉县| 茶陵县| 南乐县| 慈利县| 巴南区| 双峰县| 临西县| 赤水市| 海盐县| 哈密市| 额尔古纳市| 凯里市| 融水| 巴东县| 娄烦县| 唐河县| 洱源县| 南丰县| 平南县| 海淀区| 象山县| 常山县| 罗山县| 启东市| 呼伦贝尔市| 竹溪县| 双鸭山市| 嵊泗县| 黑龙江省| 天祝| 龙岩市| 五大连池市| 虞城县| 无为县| 涟水县| 天柱县| 崇礼县| 秦安县| 武城县| 虎林市|