OC之02面向?qū)ο?3三大特性01封裝、類方法


封裝

簡介:在以前,我們都是在我們的成員變量前面寫上@public 這樣做有時候是不對的,比如說,當(dāng)我們設(shè)好一個成員變量我們只希望別人只能夠閱讀而不能夠更改我們的成員變量的值的時候就用到我們的封裝了

封裝01--set方法

作用:提供一個方法給外界,以方便設(shè)置我們成員變量值,可以在方法里面對參數(shù)進(jìn)行相應(yīng)的過濾

命名規(guī)范:1、方法名必須以set開頭 然后后面跟上成員變量名。2、成員變量名的首字母要大些 3、返回值一定是void ? ? 4、一定要接收一個參數(shù),而且參數(shù)類型必須和成員變量類型一致 ? ? ?5、形參的名稱不能與成員變量名一樣 ? ? 6、成員變量盡量不要要@public

假如這個是我們的成員變量

set方法的聲明與實現(xiàn):

這是set方法的聲明


這個是set方法的實現(xiàn)

封裝02--get方法

作用:提供一個方法讓別人可以拿到我們的成員變量的值

命名規(guī)范:1、必須有返回值,返回值的類型與成員變量相同 ? 2、方法名與成員變量名一致 ? 3、不需要接收任何參數(shù)

關(guān)于get方法的聲明與實現(xiàn):

這是get方法的聲明


這個是get方法的實現(xiàn)

代碼規(guī)范:1、我們都是將我們的set方法與get方法的聲明寫在一起也就是我們的@interface 與@end之間 ? ? ?

2、而我們的set方法與get方法的實現(xiàn)都是寫在我們的@implementation與@end之間的

注意:

以前我們?yōu)榱俗尦鯇W(xué)者學(xué)的簡單點,我們將成員變量名寫的與其他名無差異,現(xiàn)在我們就要改過來

我們的成員變量名一定要以下劃線_開頭(這樣是為了讓別人一看就知道我們這是成員變量)這是命名規(guī)范必須這樣寫 (與局部變量、get方法區(qū)別開來)

還有一個注意:以后我們開發(fā)中會有很多這樣的錯誤內(nèi)容:

類方法

?類方法01 使用

類方法都是一加號開頭的,不用創(chuàng)建對象我們就可以執(zhí)行類方法 ? ?,類方法在某些情況下可以提高我們的程序性能 ? ? ??

與對象方法的區(qū)別

類方法與對象方法不能混用

如果混用就會出現(xiàn)下面的問題

這是錯誤的內(nèi)容

代碼書寫格式:

注意:在我們OC對象方法與類方法可以同名

總結(jié):

工具類一般我們都會使用類方法

工具類:基本沒有任何的成員變量,里面的方法基本上都是類方法

說一下,下面會引發(fā)死循環(huán)的代碼:

self--訪問成員變量

注意:self:是個指針

我們的代碼是屬于就近原則的當(dāng)我們的代碼如下圖編寫聚會根據(jù)就近原則將我們的成員變量改成20

所以為了保護(hù)我們的成員變量值不被改變,我們就會做下面的手段以防止我們的成員變量值不被改變

self--調(diào)用方法

當(dāng)我們需要一個對象的兩個方法的其中一個方法去調(diào)用另一個的方法就需要用到我們的self ? ?其具體的格式如下:

self的用途:

概念:指向當(dāng)前對象? ? 當(dāng)然我們可以利用“self—>成員變量名”訪問當(dāng)前對象的內(nèi)部的成員變量


使用注意:

注意不要引發(fā)死循環(huán)、無論在那個相同的對象還是類方法

無論是類方法還是對象方法,兩者不可交叉調(diào)換

當(dāng)然如果是函數(shù)兩者均可調(diào)用,但是要注意格式

注意:類方法是沒有成員變量,而對象是有成員變量的

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1.面向?qū)ο笕筇匦?-封裝性 -繼承性 -多態(tài)性 2.什么是封裝 封裝性就是隱藏實現(xiàn)細(xì)節(jié),僅對外公開接口。 3....
    夢夜繁星閱讀 1,163評論 0 6
  • 國家電網(wǎng)公司企業(yè)標(biāo)準(zhǔn)(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報批稿:20170802 前言: 排版 ...
    庭說閱讀 12,365評論 6 13
  • 點語法 基本使用: [p setAge = 10];就等價于p.age = 10; 意思就是這兩種寫法都是正確的,...
    高俊閱讀 582評論 2 4
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,649評論 18 399
  • 每天每天都會自己的未來所擔(dān)心,自己沒有能力,沒有很大的能力賺很多錢,只會不斷抱怨自己,埋怨自己。 去找一個像太陽的...
    卒月閱讀 139評論 0 0

友情鏈接更多精彩內(nèi)容