標籤:開頭 sum 對象 turn idt nsobject ace ges dog
首先我們先來瞭解一下什麼是類方法與對象方法。
對象方法:
對象是由“-”開頭。比如:-(void)Runner;
對象方法顧名思義只能由對象來調用 比如說:
@interface Person : NSObject
(void)Runner;//對象方法
@end;
int main()
{
Person *p=[Person new];//Person是一個類,它建立一個對象p。
[p Runner];//p調用Runner這個方法;
return 0;
{
在對象方法中可以直接存取我們當前對象的成員變數 比如:
@interface dog : NSObject
{
int _age;//成員變數
}
-(void)dogAge;
@end
@implementation dog
-(void)dogAge{
_age=20;//直接存取成員變數;
}
@end
對象方法介紹到這裡 。。。。。。
類方法:
類方法是由“+”開頭 比如:+(void)Runner;
只能由類來調用: 比如 :
@interface Person : NSObject
+(void)Runner;//對象方法
@end;
int main()
{
[Person Runner];
return 0;
{
類方法不需要使用成員變數;比如求2個數的和:
+ (int)sumN1:(int)n1 andN2:(int)n2;
類方法與對象方法同名:
通過可以看到雖然然方法名相同,但是一個是類方法一個是對象方法,也可以運行。
死迴圈:
@interface Person : NSObject
{
int age;
}
+ (void)test;
@end
//只要在mian方法中調用就是死迴圈
+ (void)test
{
[Person test];
}
類方法與對象方法可以相互調用:
ios開發 oc 的類方法與對象方法