Objective 筆記C(第二天)

來源:互聯網
上載者:User

標籤:style   io   color   os   使用   sp   檔案   div   log   

屬性本質                    

•什麼是屬性  

在OC中,屬性提供了setter和getter方法,本質上屬性就是方法,屬性的值是由執行個體變數來儲存的。 

• 屬性的本質(一般三個部分組成)

a.儲存屬性值的執行個體變數int _age; 

b.setter和getter方法的聲明

1.)setter方法:方法名+“set”+屬性名稱並首子母大寫 +“:”+和屬性類型?樣的參數,無傳回值。

-(void)setAge:(int)newAge;

2.)getter?方法:方法名和屬性名稱一樣,沒有參數,傳回值類型和屬性類型一樣。

-(int)age;

c.setter方法和getter方法的實現

setter方法的實現主要用來給屬性賦值的; 對象.屬性 = 值==>會自動調用setter方法

getter方法的實現主要用來讀取屬性值的 ;變數=引用.屬性;=>會自動調用getter方法 

stu.age = 18;//給屬性賦值 setter!

NSLog(@“age:%d",stu.age);//取屬性值  getter  

 

• 聲明式屬性                  

a.定義執行個體變數

b.聲明式屬性

1).h檔案中int屬性類型  age屬性名稱 ,自動產生了setter和getter

 @property int age; 

2).將屬性與執行個體變數關聯在一起 .m?檔案中

@synthesize age = _age;

c.屬性的使用

引用.屬性 = 值;=>會自動調用setter方法 

變數 = 引用.屬性;=>會自動調用getter方法 

 

• IOS5中的屬性 屬性的聲明簡化了

a.省去了執行個體變數聲明,會自動產生執行個體變數名為:_屬性名稱的執行個體變數

b.聲明式屬性

1).h?檔案中 int 屬性類型  age 屬性名稱,自動產生了setter和getter!

@property int age;

2).將屬性與執行個體變數關聯在?起 .m?件中!

 @synthesize age = _age;

 

• IOS6中的屬性 屬性的聲明簡化了   

a.省

b. 1)保留

2)省@synthesize age = _age;

c.保留

d.屬性的演變過程,如果你不滿意,可以?己重寫。

 

初始化方法                                  

• 什麼是初始化方法  用來初始化對象的方法。

•  無參初始化方法   初始化?方法都是以“init”開頭的,無參的初始化方法叫“init”。

•  有參初始化方法  有參的都以"initWith..."開頭。  

•  id類型  初始化?方法的傳回值為"id"類型。(void*)  

•  self關鍵字  self代表當前對象或當前類,self就是當前對象的引用。

(地址)初始化方法  • super關鍵字  super代表類的父類,[super init]是通知父類去做底層的初始化操作。

類方法                                      

•  什麼是類方法   只能通過類調用的方法叫類方法。”+"

•  類方法的定義、類方法與執行個體方法區別  

a.執行個體方法與執行個體有關係,所以執行個體方法可以調用、讀取執行個體中的執行個體變數或屬性。

b.類方法與執行個體無關係,所以類方法不可以調用、讀取執行個體中執行個體變數和屬性。

c.在類方法中可以建立對象,可以訪問該對象的執行個體變數和屬性。

Factory 方法                                  

•  什麼是Factory 方法  生產(建立)對象的方法,叫工廠?法。 類中經常會出現?些Factory 方法,其目的是為了方便建立對象。  

•  無參的Factory 方法   Factory 方法的方法名一定以類名開頭,注意去除了首碼和首字母要小寫。  

•  有參的Factory 方法  

 

Objective 筆記C(第二天)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.