程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 我們曾經心碎的C#之 第三章.如何使用C#屬性,

我們曾經心碎的C#之 第三章.如何使用C#屬性,

編輯:C#入門知識

我們曾經心碎的C#之 第三章.如何使用C#屬性,


                     第三章 . 如何使用C#屬性

1.Private訪問修飾符   訪問修飾符可以用來修飾類成員字段和方法,每個訪問修飾符只能為緊隨其後的成員指定特定的訪問權限

   如果將字段或方法聲明為public 就表示其他類可以訪問這個字段或方法

   如果為private那麼該字段或方法只能在本類中使用,其他類不能訪問  故對該內容有保護權限,但可以借助第三方對該內容修改

  示例如下:借助帶參數的聲明為public的方法來傳入參數進而對私有字段進行修改

      定義一個dog類 姓名聲明為private  然後定義一個public的方法為Setname來更改dog類中的姓名

在Main方法中傳入參數

 2.this關鍵字

在面向對象編程語言中,this關鍵字是指當前對象本身,使用this關鍵字可以解決成員變量和局部變量的沖突問題

 

3.C#中的屬性

    1.用方法保證數據安全

    示例如下:在dog類中定義一個SetAge()方法來對傳入的數據進行判斷,避免不合邏輯的修改

 

在main方法中的的代碼:

 

2.用屬性實現字段封裝

  01.C#中的屬性

  在C#中字段通常是私有的,如果要訪問類中的字段,需要通過get和set訪問器實現,這種結合了字段和方法的實現方式我們稱之為屬性。

   get訪問器用來返回相應的私有字段的值

   set訪問器用來設定相應的私有字段的值  相當於無返回值得方法,它使用一個隱含的輸入參數value,黨對屬性賦值時,將會調用set訪問器,並將新的參數值賦予   對應的字段

示例如下:dog類中的代碼:

Main方法中的代碼如下:

02.屬性的數據類型

上圖中用藍線圈起來的便是一個屬性

   定義類中的一個屬性時,屬性的數據類型必須與它所訪問的字段類型一致

注意:屬性的類型可以是一個類或一個數組

03.屬性的訪問類型

屬性可以約束數據訪問外,還可以設置讀、寫屬性來限定他的訪問類型,屬性的訪問類型可以分為一下三種:

只讀屬性:只包含set訪問器

只寫屬性:只包含get訪問器

讀寫屬性:包含get和set訪問器

04.在編碼中如何快速地創建屬性

    在一個類中,將該字段設置為私有,選中該字段ctrl+R+E(封裝字段的快捷鍵),然後回車會車。即可

    注意:在C#中

           001.為類的私有字段命名是,要以下劃線(_)開頭,隨後的英文字母采用駱駝命名法

                     002.為類的屬性命名時用Pascal命名法(即組成屬性名稱的多個單詞的首字母均大寫)

05.對象初始化器

    未使用對象初始化器:

      Dog dog=new Dog();

      dog.Age=6;

    使用對象初始化器:

      Dog dog=new Dog(){Age=6};

4.值傳遞和引用傳遞

  值傳遞:方法傳遞參數是如果采用值傳遞,那麼就算在被調用的方法中對參數的值進行修改,在方法調用之後,參數仍然是原來的值

  值傳遞又分為值類型(不會更改內容) 和引用類型(會更改內容)        

    示例如下(值類型):

 

 

有輸出結果可判定值傳遞不會更改數值

示例如下(引用類型):

 

引用傳遞:在C#中,要想使參數按引用傳遞,需要ref關鍵字來修飾參數

示例如下:

輸出結果:

可見引用傳遞會保留對數值的更改

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved