public 類欄位 就相當於c#裡面暴露給外面的屬性 類似nodejs的 module.exports
但是屬性又不同於普通的字段,屬性只是外部包裝字段 沒有自己的任何含量 類似退換後的方法。 還是需要內部欄位來設定。
private 類欄位 就相當於類內部使用的字段。其實可以把屬性看做私有變數的訪問器
1、屬性的作用:保護字段,對欄位取值與賦值進行限定
2、屬性的使用:
_name(屬性名)public [對應字段型別] 屬性名name
set}
3、欄位和屬性的命名格式:
欄位的命名方式一般採用:_camecase
欄位的命名方式一般採用:pascalcase
4、有了屬性以後,往往通過屬性去訪問字段。屬性通常宣告為public,字段通常宣告為private。在外部訪問類中的字段,都是通過屬性來實現。get可對取值進行界定,set可對賦值進行界定,通常我們將get和set稱為訪問器。
5、屬性分為4種,
1)既讀又寫:同時包含get和set
2)唯讀:只包含get
3)只寫:只包含set
4)自動屬性
例子:
class gwyyset
} 屬性,公有 但是還是需要依賴於實體字段
}
方法:「方法」是包含一系列語句的**塊。在 c# 中,每個執行指令都是在方法的上下文中完成的。
方法在類或結構中宣告,宣告時,宣告時需要指定訪問級別、返回值、方法名稱以及任何方法引數。方法引數放在括號中,並用逗號隔開。空括號表示方法不需要引數。下面的類包含三個方法:
class motorcycle public void addgas(int gallons) public int drive(int miles, int speed) }
靜態方法
靜態方法不對特定的類例項化,呼叫時候,需要指定類名呼叫
非靜態方法
略。。。
方法過載
方法名相同,但引數的 資料型別、 個數、順序不同
可變引數
可以在方法引數欄加params屬性 接受乙個一維陣列的可變引數
public void test1(params string list)
}ref 按引用傳遞
呼叫方法時,在方法中對引數所做的任何更改都反應在該變數中。
使用ref引數 必須方法宣告 和呼叫方都必須顯示的使用 ref關鍵字
int i = 3;console.writeline(i);
g.test2(ref i);
console.writeline(i);
public void test2(ref int i)
out定義輸出引數
引數通過引用來傳遞。ref要求變數必須在傳遞前初始化。而out引數不用初始化。
必須宣告和呼叫方都顯示使用 out
int value;g.test3(out value);
public void test3(out int i)
類屬性和類方法
當乙個屬性 方法被static修飾的時候,就叫做類屬性 類方法,又叫做靜態屬性 靜態方法 沒有被static修飾的屬性,就叫物件屬性 物件方法,又叫例項屬性 例項方法和非靜態屬性 非靜態方法。當乙個屬性被宣告成類屬性,那麼所有的物件,都共享乙個值,所有物件都可以修改這個值,一經修改前面的值將會被丟棄...
Python 類屬性和方法
import types class dog object slots name color info 定義 slots 該類中只允許 類物件 動態增加 name,color,info,body len 屬性或方法 都是例項屬性或方法 slots 對類的 動態新增屬性和方法 沒有限制,而 類物件 不...
類屬性和類方法
使用面相物件開發,第 1 步是設計類使用類名 建立物件,建立物件的動作有兩步 物件建立後,記憶體中就有了乙個物件的實實在在的存在 例項 因此,通常也會把 建立出來的物件叫做類的例項建立物件的動作叫做例項化物件的屬性叫做例項屬性物件呼叫的方法叫做例項方法 在程式執行時 物件各自擁有自己的例項屬性呼叫物...