成員變量和實(shí)例變量

class_declaration.jpg

圖中的Member Variable declarations翻譯過來就是成員變量的聲明
貌似 { } 中所聲明的變量都為成員變量。
既然如此,實(shí)例變量又是什么意思呢?

類: Class (description/template for an object)
實(shí)例: Instance (manifestation of a class)
消息: Message (sent to object to make it act)
方法: Method (code invoked by a Message)
實(shí)例變量: Instance Variable (object-specific storage)
超類/子類: Superclass/Subclass (Inheritance)
協(xié)議:  Protocol (non-class-specific methods)

從上面英文說明中,可以看出:實(shí)例(Instance)是針對(duì) 類(class)而言的。由此推理,實(shí)例變量(Instance Variable) 是指由類聲明的對(duì)象。再通俗一點(diǎn),實(shí)例變量就是變量類型為類類型的成員變量

上圖中的int count是一個(gè)成員變量。
NSString *name是一個(gè)實(shí)例變量(NSString是一個(gè)類)。
至于id data應(yīng)該屬于成員變量還是實(shí)例變量呢? 因?yàn)?code>id是 OC特有的類型。從本質(zhì)上講id等同于(void *)。 所以id data應(yīng)屬于實(shí)例變量。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容