oc學習筆記
5a. 變數的可見性
型別:@private:只能在當前類的物件方法中直接訪問
@protected:可以在當前類以及子類的物件方法中直接訪問
@public:任何乙個地方都可以訪問
@package:同乙個「體系內」(框架)可以訪問,介於
@private
和@public之間
b. @property
a.用在
@inte***ce中
b.用來自動生成
setter
和getter
的宣告
c.用@property int age;
就可以代替下面的兩行
- (int)age; // getter
- (void)setage:(int)age; // setter
@property示例
c.@synthesize
a.用在@implementation中
b.用來自動生成setter和
getter
的實現
c.用@synthesize age = _age;就可以代替
- (int)age *id;使用
//注意:id 後面不要加上
*id p=[person new];
侷限性掉用乙個不存在的方法,編譯器會馬上報錯
物件建立原理
new的拆分兩部曲
a.分配記憶體(+alloc)
b.初始化(-init)
c.示例
person *p1 = [person alloc];
d.person *p1 = [p1 init];
e.合成一句後:
f.person *p = [[person alloc] init];
init方法的重寫過程
- (id)init
if (self = [super init])
_age = 10;
return self;
自定義構造方法
構造方法的一些規範
a.返回值是id型別
b.方法名都以init開頭
- (id)initwithage:(int)age {
if (self = [super init]) {
_age = age;
return self;
OC學習筆記
1 什麼時候用類方法?什麼時候用例項方法?類方法 應該是對整個模型層面的操作,例項方法 是對某單個模型的操作。又如有乙個使用者類,請求附近的使用者,應該寫成類方法,更新當前使用者的資料,應該寫成例項方法。工具類,基本不需要訪問任何成員變數的時候用類方法。主要全域性層面使用,很方便。需要單獨建立某個物...
OC學習筆記之OC類你好
之前,小橋的mac系統是裝在虛擬機器中的,虛擬機器占用資源太大,想裝在實機上,所以這個星期都在搗鼓,終於完工!一 關於類 高階語言中似乎都有類的概念,c 中是從c的結構體而來。類是物件導向語言中的核心部分,物件導向的三大特性在類中都有具體表現!比如在c 類中,有封裝,有繼承,多型性有過載!相信oc中...
OC學習筆記 OC中的類
1.objc跟c的區別與聯絡 首先 objc是乙個物件導向的語言 封裝 繼承 多型 objc相當於c的乙個超集 即objc允許使用任何c語言 但增加了許多c沒有的特點 bigger easier 2.objc中的類與物件 類由介面 xx.h inte ce 和實現 xx.m implementati...