日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Objective-C語法之static關(guān)鍵字的那些事兒(六)

系統(tǒng) 1779 0
Objective-C語法之static關(guān)鍵字的那些事兒









學(xué)習(xí)過Java 或者 C 語言的朋友應(yīng)該很清楚static關(guān)鍵字吧?在某個類中聲明一個static 靜態(tài)變量, 其他類中想使用它或者修改它不用new 這個對象 ,直接使用它的類名方可直接拿到這個靜態(tài)變量的對象,遍可以在其他類中任意修改這個變量的數(shù)值。
在Objective-C 的語法中聲明后的static靜態(tài)變量在其他類中是不能通過類名直接訪問的,它的作用域只能是在聲明的這個.m文件中 。不過可以調(diào)用這個類的方法間接的修改這個靜態(tài)變量的值。MOMO通過一個例子詳細(xì)的解析一下static關(guān)鍵字的使用。


類的創(chuàng)建方法就不多說了,之前的文章有寫過。

MyClass.h
警告: static 寫在interface外面編譯是沒有錯誤的,但是編譯器會報警告,這么說這樣的寫法是不被編輯器認(rèn)可的。
錯誤:static 寫在 interface里面會直接報錯,顯然這樣的語法是不被認(rèn)可的。

+(void) addCount; 各位盆友們注意一下這法方法前面的+號。 它的意思是標(biāo)致這個方法為靜態(tài)方法,標(biāo)志+號后不用創(chuàng)建這個對象通過類名可以直接調(diào)用這個靜態(tài)方法。 而之前方法前用過的-號,標(biāo)志-號后的方法必須通過本類的對象或者在本來中才可以使用。





MyClass.m

static關(guān)鍵字聲明的變量必須放在implementation外面,或者方法中, 如果不為它賦值默認(rèn)為0,它只在程序開機初始化一次。
+(void)addCount 因為標(biāo)識了+號,所以這個方法無需使用這個類的對象調(diào)用。直接使用類名方可調(diào)用這個方法。



main.m

無需alloc這個對象,直接使用MyClass類名方可直接調(diào)用addCount方法。



運行這個程序,初始化賦值為100 ,調(diào)用方法的時候++,所以打印出來的數(shù)值為101。






MyClass.m

將static整型變量定義在方法中,并且為其賦值100。



main.m

循環(huán)5次調(diào)用這個方法,看看結(jié)果是什么樣字,結(jié)果肯定是101吧。。



程序員不要相信任何人說的任何有關(guān)程序的話,一定相信自己,相信自己眼睛看到的一切,哇咔咔~~

可見即使將static靜態(tài)變量寫在方法中,它的初始化也是在程序開機時,程序一旦啟動以后static是不能在創(chuàng)建的。所以程序在這里調(diào)用了5次這個方法,sCount的值并沒有因為重新創(chuàng)建static sCount而改變,而是將sCount的值一直存在內(nèi)存中。







static關(guān)鍵字在任何語言中都是非常重要的,它有優(yōu)點也有缺點,善用static 關(guān)鍵字是一個不錯地選擇哦,哇咔咔~

前幾天上不了網(wǎng) 悲劇啊~~ 今天去按摩店 針灸 拔火罐 按摩 刮痧 太爽了,MOMO向廣大盆友們問好,有什么都沒有有一個好身體重要,多去健身 保健 鍛煉身體 搞IT的盆友們 你們懂得 嘿嘿。。






Objective-C語法之static關(guān)鍵字的那些事兒(六)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。。?/p>

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 牟定县| 靖安县| 策勒县| 张家港市| 博爱县| 巩留县| 腾冲县| 浑源县| 安阳市| 平邑县| 澄江县| 陈巴尔虎旗| 鲁甸县| 新沂市| 诸暨市| 永川市| 胶南市| 武邑县| 皋兰县| 乌拉特后旗| 八宿县| 惠东县| 油尖旺区| 循化| 特克斯县| 广汉市| 徐州市| 耒阳市| 巩留县| 东丽区| 新昌县| 潜江市| 江川县| 会宁县| 康保县| 雷波县| 清新县| 英山县| 凌海市| 白沙| 北辰区|