【好程式員筆記分享】Obj-c之類的聲明和定義

來源:互聯網
上載者:User

標籤:

<A href="http://www.goodprogrammer.org/" target="blank">ios培訓</A>------我的Obj-c語言筆記,期待與您交流!

  由於之前做基本測試時,對Obj-c還不太瞭解,做的一踏糊塗(其實我想可能只會出現C相關的題呢-_-#),題中出現一些類的繼承,聲明,定義方面是問題,由於之前學過C++對物件導向有一定的瞭解,就先查資料提前看看Objc-c這塊的知識。

類的聲明: 
1 #import<Foundation/Foundation.h> 2 3 @interface Person:NSObject 4 { 5 @public: 6 int age; 7 } 8 -(void) func; 9 @end
類的實現:10 #import"Person.h"11 12 @implementation Person13 -(void) func{14 NSLog(@"I‘m very hungry now");15 }16 @end

 

聲明:@interface 類名:父類名 {  }  @end

定義:@implement{  }  @end

NSObject是任何類的直接或者間接父類

成員變數存取權限修飾符:@public、@protected(預設)、@private

成員方法和類方法:“-”修飾為成員方法,“+”修飾為類方法(類方法中不可以包含執行個體變數,否則直接報編譯時間錯誤)

當想要把成員方法暴露出來時,在@interface 類名:父類名 {  }  @end之間進行聲明,則能夠在類外部進行調用

 

常見錯誤:

(1)@interface  @end和@implementation  @end不能嵌套包含

(2)只有類的聲明沒有類的實現

(3)漏寫@end

(4)成員變數沒有寫在{}裡

(5)方法的聲明寫在了{}裡面

(6)方法無法像函數那樣的調用

(7)成員變數和方法不能用static等關鍵字修飾,不要和c語言混淆(靜態變數的產生方法:不能在@interface 類名:父類名 {  }  @end之間對成員變數進行static修飾,需要在@implement  @end實現檔案中聲明一個全域的靜態變數,然後寫這個靜態變數的get方法和set方法供類外部進行調用,這樣子就能達到產生靜態變數的目的)

(8)類的實現可以寫在mian函數後面,在使用之前只要有聲明就可以

 

【好程式員筆記分享】Obj-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.