Objective-C( 三方法的聲明與實現)

來源:互聯網
上載者:User

標籤:

OC方法的聲明與實現

oc方法的聲明在@interface中 大括弧外@end上面

oc方法的實現在@implementation 中@end上面

OC方法中,一個參數對應一個冒號

方法名:

例  fangFaMing:(冒號也是方法名的一部分)

    -傳回值類型  方法名:參數名:(參數類型)參數 參數名:(參數類型)參數 ;

例  -(int)fangFaMing:sumWithNum1:(int)num1 andNum2:(int)num2;

                   ??此處空格

易犯錯誤

 1.唯寫聲明,不寫實現

 2.將@end這個結束標記丟了

 3.類的聲明或實現都不能寫在c的函數中

 4.屬性的聲明必須寫在大括弧當中

 5.在聲明屬性的時候,不能直接賦值

 6.聲明與實現不能嵌套

 7.方法的聲明只能寫在大括弧下面,@end上面

 8. ‘-[Person run]: unrecognized selector sent to instance 0x100109c80‘  就是對象沒有找到run這個方法

 9.建立一個類的時候一定要寫上:NSObject,這樣這個類才具有建立對象的能力。

總結

@import <Foundation/Foundation.h>

//類的聲明

@interface Iphone : NSObject//使類就有建立對象的能力

{

    @public

    int _model;//型號

}

 

//方法分成兩種:對象方法和類方法

//注意對象方法

//1.對象方法以-開頭,2.所有的資料類型都要放在()當中,且只有資料類型要放在()裡面3.方法名遵循駝峰原則 4.如果是沒有參數的方法,方法名後面什麼都不用寫 5.如果是有參數的方法,一個參數對應一個:,冒號屬於方法名的一部分 6.一般oc當中都會把方法名寫的像句子一樣,做到見名知意。

//無參無傳回值

-(void)lookMyPhone;

//無參有傳回值

-(char *)receiptMessage;

//有參無傳回值

-(void)sendMessage:(char *)message toPhoneNumber:(char *)number;

//有參有傳回值

 

@end

 

//類的實現

@implementation Iphone

 

-(void)lookMyPhone{

    NSLog(@"型號是%i",_model);

}

 

-(char *)receiptMessage{

    return "hello";

}

 

-(void)sendMessage:(char *)message toPhoneNumber:(char *)number{

    NSLog(@"你在給%s,發送%s",number,message);

}

 

@end

 

int main(int argc, const char * argv[])

{

    //oc當中的對象可以作為另一個對象的成員變數。通過誰屬於誰來判斷,如果放進語境當中,符合人們的習慣,前面的就是後面的成員變數。

    

    //1.開闢儲存空間 2.初始化成員變數(整數初始化為零,oc當中的對象作為成員變數時初始化為空白(nil)3.返回空間的地址

    Iphone *iphone1 = [Iphone new];

    

    //給成員變數賦值

    iphone1->_model = 2;

    

    //建第二個對象

    Iphone *iphone2 = [Iphone new];

    

    iphone2->_model = 5;

    

    //總結:1.一個類可以有多個對象,對象之間互不影響

    //2.一個對象的成員變數或對象方法,只能通過指標來調用。

    //3.一個對象的成員變數或方法,只能由本類或對象來調用。

    return 0;

}

 

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.