c 4 5新語法 自動屬性和隱式型別

2022-07-19 02:21:14 字數 1031 閱讀 1686

1、自動屬性

自動屬性是c#中屬性定義的兩種形式的一種:傳統屬性定義、自動屬性。

1.1 傳統屬性定義

private int _age;

public int age

set

}1.2 自動屬性

public int age//該句**的作用和上面傳統屬性定義的語句的作用是一樣的

1.3 兩種屬性定義形式的優缺點對比

1.3.1 傳統屬性定義形式

缺點:定義屬性的**多 語法不簡潔 繁瑣

優點:定義屬性的時候,可以帶一些邏輯判斷,這是自動屬性所不能做到的。

例如:private int _age;

public int age

set }}

1.3.2 自動屬性定義形式

優點:定義語法簡介,高效、減少程式設計師書寫的**量

缺點:定義屬性的時候,不能做一些邏輯判斷。

2、屬性的作用

1、定義屬性可以保護類的私有字段(封裝性)

2、簡化了對類的呼叫(定義屬性之後,要呼叫累得字段_age,不需要再例項化類了)

3、隱式型別 var

3.1概述

定義變數的方式有兩種:傳統定義方式、定義成隱式型別。

傳統定義方式:資料型別+變數名(定義的時候可以初始化,也可以不初始化) int k=0;int k;

隱式型別定義方式:var+變數名(定義的時候必須初始化)var k=0;、

3.2 注意

(1).宣告的同時必須初始化,因為編譯時要根據初始化值型別來推斷var的型別;

(2).宣告後不能再修改資料型別,因為初始化的時候已經確定了var的型別了;

(3).只能作為方法區域性變數使用。類的成員字段、方法的形參和返回值都不能使用!因為無法在編譯時確定他們的型別!

(4).初始化表示式不能是匿名函式和null。

(5)、隱式型別不是動態型別,編譯的時候,.net框架把var k=0;轉換成了int k=0;

專案知識儲備 自動屬性 隱式型別Var

在 c 3.0 和更高版本中,當屬性的訪問器中不需要其他邏輯時,自動實現的屬性可使屬性宣告更加簡潔。客戶端 還可通過這些屬性建立物件。知識點一 自動屬性 例如下面 class myclass 一般屬性用法 privae string name public string name set 自動屬性 ...

C 隱式和顯示型別轉換

c 是在編譯時靜態型別化的,因此變數在宣告後就無法再次宣告,或者無法用於儲存其他型別的值,除非該型別可以轉換為變數的型別。1.隱式型別轉換 隱式轉換,就是系統預設的轉換,其本質是小儲存容量資料型別自動轉換為大儲存容量資料型別,該轉換是一種安全型別的轉換,不會導致資料丟失,因此不需要任何特殊的語法。下...

C 的隱式型別轉換和顯式型別轉換

c 的隱式型別轉換和顯式型別轉換 c 的隱式型別轉換 在 c 語言中,一些預定義的資料型別之間存在著預定義的轉換。比如,從 int型別轉換到 long 型別。c 語言中資料型別的轉換可以用分為兩 類 隱式轉換 implicit conversions 和顯式轉換 explicit conversio...