第一節
類的定義和使用
<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...