關於屬性,成員變數的認識

2021-07-04 21:16:08 字數 946 閱讀 4000

關於屬性和成員變數概念的說法,網上搜了很多,沒找到特別明確的說,而且還更加混亂了。

根據自己的認識和從網上搜尋的資訊稍微總結一下:

看法1、從訪問許可權上區分

屬性和成員變數說到底都是變數,只是他們的訪問許可權不同。

在.h檔案的{}中宣告的變數,預設是protect

在.m檔案的inte***ce(){}宣告的變數,預設是private

在.m檔案中宣告的變數,在其他類中不可以呼叫;

在.h檔案中宣告的變數,在其他類中可以呼叫。

看法2、互動性的角度

一些建議:

1.如果只是單純的private變數,最好宣告在implementation裡.

2.如果是類的public屬性,就用property寫在.h檔案裡

3.如果自己內部需要setter和getter來實現一些東西,就在.m檔案的類目裡用property來宣告

屬性:一般都包括對應的例項變數和setter、getter方法

.h中的inte***ce的大括號{}之間的例項變數,.m中可以直接使用;

.h中的property變數,.m中需要使用self.propertyvariable的方式使用propertyvariable變數

一些建議:

1.如果只是單純的private變數,最好宣告在implementation裡.

2.如果是類的public屬性,就用property寫在.h檔案裡

3.如果自己內部需要setter和getter來實現一些東西,就在.m檔案的類目裡用property來宣告

一些建議:

1.如果只是單純的private變數,最好宣告在implementation裡.

2.如果是類的public屬性,就用property寫在.h檔案裡

3.如果自己內部需要setter和getter來實現一些東西,就在.m檔案的類目裡用property來宣告

成員變數和屬性

成員變數的作用域 inte ce person nsobject 屬性生成器 屬性生成器 property 1.自動的生成 getter和setter方法的 宣告 2.需要知道 引數型別和屬性名稱 3.是編譯器的特性 synthesize 生成getter 和 setter方法,最為簡單的實現 sy...

屬性,例項變數和成員變數

synthesize window window 意思是說,window 屬性為 window 例項變數合成訪問器方法。解析 意思是說window屬性生成訪問方法 setwindow方法,而這個方法就是實際變數 window的 的訪問方法,setwindow操作的就是 window這個方法。ps w...

IOS categoty,成員變數,屬性實現的總結

我們首先看看關於類別的結構體 從上面結構體中我們可以看到這幾個屬性 category name 類別的名字。class name 類別的類。instance methods 類別中的例項方法 class methods 類別中的類方法 protocols 類別中的協議。那麼類別怎麼往原始類中新增方法...