OC類的定義和使用

2021-07-09 07:35:19 字數 2553 閱讀 6217

第一節

類的定義和使用

<1>  第乙個oc工程的建立

<2>  類和物件的基本概念

objective-c語言

oc就是c語言的基礎上做了乙個擴充套件

b語言開發了系統unix作業系統

發明c語言----重寫unix作業系統

面向過程的程式設計思想

例項:計算兩數之和

定義變數-->輸入-->計算--->輸出

物件導向的程式設計思想

什麼是物件?

什麼是類?

世界上的任何事物都可以稱作物件

張三,李四,王麻子... ...

視窗,按鈕,檔案... ...

每個物件都有它自己的屬性和行為

狗的屬性:名字,身高,體重,性別......

狗的行為:吃飯eat,跑run,叫bark......

同一種物件的抽象就是類

<3> 類的設計和使用(相對語法知識比較多, 追求熟練度)

需求:描述和處理狗這種事物

1) 類的定義

//<1>定義乙個類, 使用@inte***ce定義乙個類

//@inte***ce 表示定義了乙個類

//dog 表示這個類的類名為 dog

////      : nsobject 語法表示dog類繼承了乙個類nsobject

//      (學習繼承的時候詳細說)

//      學習繼承之前每個類預設繼承 nsobject

//      新增屬性的時候放在大括號中

//oc中類定義的時候有兩部分: 介面@inte***ce和實現@implementation

//  定義在main函式的外面

@inte***ce dog : nsobject

@end

//dog類的實現

@implementation dog

@end

2) 物件的建立

3) 使用方法(傳送訊息)

//xiaocao設定年齡

//[xiaocao setage:5];

//[xiaocao setgender:'b'];

//[xiaocao setweight:20];

重構與程式設計規範

4) 多引數方法 

//-(void)say;

//-(void)setage:(int)age

//-(void)setage:(int)age andgender:(char)gender;

-(void)setage:(int)age

andgender:(char)gender

andweight:(double)weight;

5) 訪問控制

//新增三個例項變數

//訪問控制: 擁有訪問的許可權

//預設情況: 例項變數外界不能訪問

//預設的許可權受保護的@protected

//  類自己的方法能直接訪問

//  類外不能直接訪問,通過獲取和設定方法訪問

@protected

int _age;

char _gender;

double _wegiht;

//私有的

//  類自己的方法能直接訪問

//  類外不能直接訪問,通過獲取和設定方法訪問

@private

int _var;

//公有的

//  類自己的方法能直接訪問

//  類外也能直接訪問, 通過obj->var形式直接訪問

//  設定為受保護的,新增設定方法和獲取方法

//      對資料做出各種保護

@public

int _num;

//總結:

//  (1)預設是受保護的, 類外不能直接訪問

//          通過設定和獲取方法訪問

//  (2)公有許可權盡量不要使用,會破壞類的封裝性

//  (3)訪問控制針對例項變數的,類中的方法預設都是可以直接訪問的

6) 自定義初始化方法

//重新實現init方法

//  id表示通用型別的指標,可以指向任意型別物件

-(id)init

return self;

}//新增帶有引數的init方法

-(id)initwithage:(int)age

andgender:(char)gender

andweight:(double)weight

return self;

}7) 類方法

方法分為兩種:

<1>例項方法(-方法):  需要通過物件指標使用

[xiaohua  setage:100];

需求:  使用乙個方法的時候直接通過類名使用

<2>類方法(+方法), 方法的前面是+號, 就是乙個類方法

特點:  直接通過類名使用這個方法

例項:  實現乙個類, 新增計算階乘的方法

//新增乙個方法, 計算n的階乘

//語法: 類方法, 直接通過類名呼叫

+(int)factorial:(int)n;

<4> 程式設計實踐

OC類和物件 定義類

main.m oc物件導向 created by goddog on 15 1 2.1.object c 支援物件導向的三大特徵 繼承 封裝 多型。2.提供了 private package protected public訪問控制符來實現封裝 1.定義類 1 介面部分 a.定義該類包含的成員變數和...

OC類的定義

2011年03月02日 11 46 00 閱讀數 6518 標籤 float inte ce object 下文為閱讀筆記。一 object c的類基本定義 1.類定義在 inte ce和 end之間。2.myclass nsobject的方式定義子類和父類。3.中定義類的物件成員 4.定義的是方法...

OC 中類的宣告和定義

1 宣告類 inte ce 和 end 之間 類名 繼承nsobject 屬性 方法 只需宣告,不需實現 2 實現 implementation 和 end 之間 實現 inte ce宣告的方法 import inte ce dog nsobject void run 方法的實現 end imple...