Objective C語法之類和物件

2021-06-28 15:58:23 字數 3410 閱讀 2514

下圖中是一段的類宣告的語法展示,宣告了乙個叫做 myclass 的類,它繼承於根類:nsobject。(根類可以被所有的其他類直接或間接繼承。)

下圖是乙個方法的語法展示,方法的宣告由以下幾個部分構成:方法型別識別符號,返回型別,乙個或多個方法簽名關鍵字,以及引數型別和名稱。

類的實體變數的訪問許可權:

對應的**:

[cpp]view plain

copy

@inte***ce worker : nsobject    

沒有寫關鍵字的實體變數,比如 char *name是@protected的。也就是說,預設是protected的。

1.1、新建版專案,按command + n 新建檔案,建立類student ,繼承與nsobject

1.2、生成student.h  和student.m

[cpp]view plain

copy

#import 

@inte***ce student : nsobject  

@end  

[cpp]view plain

copy

#import "student.h"

@implementation student  

@end  

1.3、在標頭檔案裡新增類成員變數和方法

@inte***ce

[cpp]view plain

copy

#import 

@inte***ce student : nsobject  

-(void

) printinfo;  

-(void

) setstudentname: (nsstring*) name;  

-(void

) setage: (nsinteger) age;  

-(nsstring*) studentname;  

-(nsinteger) age;  

@end  

1.4、實現類中的方法

@implementation

[cpp]view plain

copy

#import "student.h"

@implementation student  

-(void

) printinfo  

-(void

) setstudentname: (nsstring*) name  

-(void

) setage: (nsinteger) age  

-(nsstring*) studentname  

-(nsinteger) age  

@end  

1.5、建立類物件,呼叫方法。

[cpp]view plain

copy

student *student = [[student alloc]init];  

[student setstudentname:@"張三"

];  

[student setage:10];  

[student printinfo];  

[student release];  

列印結果:

[plain]view plain

copy

姓名:張三 年齡:10歲  

2.1新增乙個多引數的方法和實現

[cpp]view plain

copy

....  

-(void

) setnameandage:(nsstring*) name setage:(nsinteger) age;  

....  

[cpp]view plain

copy

....  

-(void

) setnameandage:(nsstring*) name setage:(nsinteger) age  

....  

2.2呼叫

[cpp]view plain

copy

student *student = [[student alloc]init];  

[student setnameandage:@"李四"

setage:20];  

[student printinfo];  

[student release];  

列印結果:

[plain]view plain

copy

姓名:李四 年齡:20歲  

3.1宣告和實現建構函式

[cpp]view plain

copy

....  

-(student*) initwithnameandage:(nsstring*) name setage:(nsinteger) age;  

....  

[cpp]view plain

copy

....  

-(student*) initwithnameandage:(nsstring*) name setage:(nsinteger) age  

return

self;  

}  ....  

-(id)init 這個方法用於類的初始化建立,每乙個類在建立的時候需要呼叫init方法,使用父類的init 方法得到了self,這就可以做一些子類初始化的工作

3.2使用自定義建構函式:

[cpp]view plain

copy

student *student = [[student alloc]initwithnameandage:@

"rongfzh"

setage:6];  

[student printinfo];  

[student release];  

[student release];  

Objective C語法之類和物件

下圖中是一段的類宣告的語法展示,宣告了乙個叫做 myclass 的類,它繼承於根類 nsobject。根類可以被所有的其他類直接或間接繼承。下圖是乙個方法的語法展示,方法的宣告由以下幾個部分構成 方法型別識別符號,返回型別,乙個或多個方法簽名關鍵字,以及引數型別和名稱。1.2 生成student.h...

Objective C之類和物件

面向過程程式設計 procedure oriented programming,pop 以事件為中心,關心完成該事件的詳細步驟,一步一步如何實現.物件導向程式設計 object oriented programming,oop 以事物為中心,也就是引數事件的參與者,設計事物的功能,而完成事件只是事物...

Objective C之 類別小例項

內容大綱 已知乙個字串,要求找出字串中所有的阿拉伯數字並計算其個數 例如 a123sb23r2jsowsalwf 求數字的個數 1 計數器思想,定義乙個變數儲存結果 2 遍歷字串,取出字串中所有的字元1 import23 int getstrcount nsstring str 411 12retu...