1
2
3
4
5
6
7
8
9
10
11
12
#import
@inte***ce
fraction:
nsobject
@property
int
numerator, denominator;
//宣告引數的屬性(合成器)
-(
void
) print;
//宣告列印引數方法
-(
void
) setto:(
int
) n over: (
int
) d;
//宣告多個引數的方法
-(
double
) converttonum;
//宣告除法運算方法
@end
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
@implementation
fraction
@synthesize
numerator, denominator;
//定義引數屬性(合成器)
-(
void
) print
//定義列印引數方法
-(
void
) setto: (
int
) n over: (
int
) d
//定義多個引數的方法
-(
double
) converttonum
//定義除法運算方法
@end
下面分別講解objective-c中的屬性和帶多個引數的方法。
首先我們先說屬性,在介面部分(@inte***ce部分)中使用@property指令標識屬性。這些屬性通常是例項變數。在fraction類中,兩個例項變數numerator和denominator都屬於此類屬性。接下來我們需要在實現部分(@implementation部分)使用指令@synthesize定義即可。對於屬性的訪問,可以通過類的例項使用點運算子進行訪問。
參照上面例子fraction類的setto:over方法。首先,在介面檔案中新增setto:over:宣告(詳見上面例子對setto:over方法的宣告)。然後在實現部分(@implementation部分)新增新方法的定義。新的setto:over:方法僅接收兩個整型引數,n和d,並把它們賦值給該分數對應的域numerator和denominator。
建立方法名時,引數名實際上是可選的。例如,可以如下宣告乙個方法:
1
-(
int
) set: (
int
) n: (
int
) d;
注意,和先前的例子不同,這個方法的第二個引數沒有名字。這個方法名為set::,兩個冒號表示這個方法有兩個引數,雖然沒有全部命名。
要呼叫set::方法,可以使用冒號作為引數分隔符,如下所示(假設例項名稱為:afraction):
1
[afraction set: 1: 3];
在編寫新方法時,省略引數名不是一種好的程式設計風格,因為它使程式很難讀懂並且很不直觀,特別是當使用的方法引數特別重要時更是如此。
多型 方法 屬性
多型是針對方法而言的 animal cat new cat cat.say 呼叫的是子類的方法 方法看右邊 取決於建立物件的型別 system.out.println cat.name 呼叫的是父類的屬性 屬性看左邊 取決於定義變數的型別 system.out.println cat.getname...
DataTable常用方法屬性
平台裡面對datatable的操作是比較多的,網格部件 樹形部件 記錄部件這3大部件是開發中使用最平凡的幾個部件,然而這幾個部件是與datatable直接繫結的,對datatable的操作就可以對介面上的資料直接操作。datatable的用法是和c 完全一樣的,大家可以查詢相關資料,在下面我列出了d...
Python中類的方法屬性與方法屬性的動態繫結
最近在 學習python 純粹是自己的興趣愛好,然而並沒有系統地看python 程式設計書籍,覺得上面描述過於繁瑣,在 找了一些學習的 發現廖雪峰老師的 上面的學習資源很不錯,而且言簡意賅,提取了一些 python python 的執行 缺點就是沒有系統的看 python 的書籍,不能及時的將知識的...