關於objective-c中類的組合問題,我們先來看一道題:
1.設計2個類,類之間的關係自擬(比如繼承、組合)
1> 身材資料
(1)屬性
* 身高
* 體重
* 手長
* 腳長
(2)方法
* 屬性相應的set和get方法
2> 人
(1)屬性
* 年齡
* 身高
* 體重
* 手長
* 腳長
(2)方法
* 屬性相應的set和get方法
思路:在這道題裡面,人擁有乙份 身材資料 ,所以用組合關係,在人這個類裡面組合身體資料這個類,來實現。
實現**如下:
// 身材資料
@inte***ce bodydata : nsobject
// 身高的getter和setter
- (int)height;
- (void)setheight:(int)height;
// 體重的getter和setter
- (int)weight;
- (void)setweight:(int)weight;
// 手長的getter和setter
- (int)handlength;
- (void)sethandlength:(int)handlength;
// 腿長的getter和setter
- (int)leglength;
- (void)setleglength:(int)leglength;
@end
@implementation bodydata
// 身高的getter和setter
- (int)height
- (void)setheight:(int)height
// 體重的getter和setter
- (int)weight
- (void)setweight:(int)weight
// 手長的getter和setter
- (int)handlength
- (void)sethandlength:(int)handlength
// 腿長的getter和setter
- (int)leglength
- (void)setleglength:(int)leglength
@end
// 人
@inte***ce person : nsobject
// _age的setter和getter
- (void)setage:(int)age;
- (int)age;
// _bodydata的setter和getter
- (void)setbodydata:(bodydata *)bodydata;
- (bodydata *)bodydata;
@end
//實現
@implementation person
// _age的setter和getter
- (void)setage:(int)age
- (int)age
// _bodydata的setter和getter
- (void)setbodydata:(bodydata *)bodydata
- (bodydata *)bodydata
@end
int main()
Objective C 中的類和物件
在objc4 532.2以後,蘋果把nsobject的實現也挪進來了。想要了解nsobject底層實現終於不用去摳gnustep了 好了,下面正文 runtime裡面,宣告了id和class的型別,簡化一下如下 1 2 3 4 5 6 7 8 9 structobjc class structobj...
Objective C 類的定義
這次,我們介紹objective c是如何定義乙個完整的類。定義乙個類都包括哪些部分,為了簡單明瞭,更加直接,列舉了乙個20多行 的小例子。那麼,讓我們先看下面這個簡單的例子 1 2 3 4 5 6 7 8 9 10 11 import 引用foundation庫標頭檔案 inte cefracti...
Objective C 類的擴充套件
category,分類或類目。主要作用是為沒有原始碼的類加入方法。通過category加入的方法會成為原類的一部分。從而達到擴充套件乙個類的功能。定義category過程 新建 件 選擇objective c category模板 填寫類名和分類名 h 件加入 法宣告 m加入 法實現 categor...