C 方法,屬性,和事件

2021-04-12 22:11:07 字數 2312 閱讀 2298

1.7.3 方法

方法是乙個執行可以由對像或類完成的計算或行為的成員。方法有乙個形式引數列表(可能為空),乙個返回數值(或void),並且可以是靜態也可以是非靜態。靜態方法要通過類來訪問。非靜態方法,也稱為例項方法,通過類的例項來訪問。例子

using system;

public class stack

public static stack flip(stack s)

public object pop()

public void push(object o)

public override string tostring()

...}

class test

}介紹了stack,它有許多靜態方法(clone和flip)和許多例項方法(push、pop和tostring)。

方法可以被重複呼叫,這意味著只要有乙個唯一的簽名,多個方法可能有相同的名稱。方法的簽名包括方法、資料、修飾符和它的形式引數的各種型別的名稱。方法的簽名不包括return型別。例子

class test

static void f(object o)

static void f(int value)

static void f(int a, int b)

static void f(int values)

static void main() );}}

介紹了有乙個成員方法f的類。程式的輸出為

f()f(int)

f(object)

f(int, int)

f(int)

1.7.4 屬性

屬性是提供對對像或類的特性進行訪問的成員。屬性的例子包括字串的長度,字型的大小,視窗的焦點,使用者的名字,等等。屬性是域的自然擴充套件。兩者都是用相關型別成員命名,並且訪問域和屬性的語法是相同的。然而,與域不同,屬性不指示儲存位置。作為替代,屬性有訪問程式,它指定宣告的執行來對他們的進行讀或寫。

屬性是由屬性宣告定義的。屬性宣告的第一部分看起來和域宣告相當相似。第二部分包括乙個get訪問程式和乙個set訪問程式。在下面的例子類button定義了乙個caption屬性。

public class button

set }}

像caption屬性一樣的讀寫都可以的屬性包括get和set訪問程式。當屬性的值要被讀出的時候,會呼叫get訪問程式;當要寫屬性值的時候,會呼叫set訪問程式。 properties 在set訪問程式中,屬性的新值賦給乙個名為value的隱含引數。

屬性的宣告是相對直接了當的,但是屬性顯式它自己的數值是在使用的時候而不是在宣告的時候。可以按照對域進行讀寫的方法來讀寫caption屬性:

button b = new button();

b.caption = "abc"; // set

string s = b.caption; // get

b.caption += "def」; // get & set

1.7.5 事件

事件是使得對像和類提供通知的成員。乙個類通過提供事件宣告來定義乙個事件,這看起來與域和事件宣告相當類似,但是有乙個event關鍵字。這個宣告的型別必須是delegate型別。

在這個例子中

public delegate void eventhandler(object sender, event e);

public class button

}button類定義了乙個型別為eventhandler的click事件。在button類中,click成員與乙個eventhandler型別的私有域相對應。然而,在button類外,click成員只能用在+=和-=操作符的左邊。這在新增和刪除事件控制代碼方面限制客戶**。例子

using system;

public class form1

button button1 = new button();

void button1_click(object sender, event e)

public void disconnect()

}介紹了類form1,它為button1的click事件新增了button1_click作為事件控制代碼。在disconnect方法中,去掉了事件控制代碼。

如例子中所示,類button需要被重寫來使用像屬性一樣的事件宣告而不是像域一樣的事件宣告。

public class button

set

}public void reset()

}這個改變不會影響到客戶**,但是因為click的事件控制代碼不需要用域來實現,所以允許類button的執行更靈活。

Objective C 方法 屬性

1 2 3 4 5 6 7 8 9 10 11 12 import inte cefraction nsobject propertyintnumerator,denominator 宣告引數的屬性 合成器 void print 宣告列印引數方法 void setto int n over int ...

多型 方法 屬性

多型是針對方法而言的 animal cat new cat cat.say 呼叫的是子類的方法 方法看右邊 取決於建立物件的型別 system.out.println cat.name 呼叫的是父類的屬性 屬性看左邊 取決於定義變數的型別 system.out.println cat.getname...

Jquery attr 方法 屬性賦值和屬性獲取

jquery中用attr 方法來獲取和設定元素屬性,attr是attribute 屬性 的縮寫,在jquery dom操作中會經常用到attr attr 有4個表示式。1.attr 屬性名 獲取屬性的值 取得第乙個匹配元素的屬性值。通過這個方法可以方便地從第乙個匹配元素中獲取乙個屬性的值。如果元素沒...