中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 開發技術 > 
  • OC中實例變量可見度、setter、getter方法和自定義初始化方法

OC中實例變量可見度、setter、getter方法和自定義初始化方法

發布時間:2020-07-11 07:45:53 來源:網絡 閱讀:797 作者:Running2snail 欄目:開發技術

在對類和對象有一定了解之后,我們進一步探討實例變量的可見度等相關知識

實例變量的可見度分為三種情況:public(共有),protected(受保護的,默認),private(私有的),具體的不同和特點如下:

OC中實例變量可見度、setter、getter方法和自定義初始化方法

具體的使用示例如下:

OC中實例變量可見度、setter、getter方法和自定義初始化方法


編程時默認的可見度是@protectde,為什么不使用@public呢?

因為OC是面向對象編程,使用@public關鍵字,暴漏了類內部的細節,從而不符合面向對象語言的三大特性之一——封裝

實例變量經過@protectde修飾之后,我們就不能在該類和其子類外操作,例如mian.m文件。那么我們如何才能在mian.m文件中設置person的_name,讀取person的_name。

這就需要我們去添加兩個方法即setter和getter方法

在OC里,為實例變量賦值的方法成為setter(設置器)

讀取實例變量值的方法稱為getter(訪問器)

賦值(setter):通過方法傳入參數,在類的內部實現實例變量的賦值

取值(getter):通過方法獲取實例變量的值

OC里規定了setter和getter的書寫格式

如果一個實例變量是int age;或者int_age;

setter的書寫格式如下: - (void)setAge:(int)age;即set + 首字母大寫的實例變量名(忽略下劃線)

getter的書寫格式如下: - (int)getAge;即返回值類型與變量類型一致,方法名與實例變量名相同(忽略下劃線)


具體示例如下:

Person.h文件中:

OC中實例變量可見度、setter、getter方法和自定義初始化方法

Person.m文件中:

OC中實例變量可見度、setter、getter方法和自定義初始化方法

多參方法:

OC中實例變量可見度、setter、getter方法和自定義初始化方法



OC中的方法分為兩種:類方法和實例方法

類方法:只能類使用,例如:+ (id) alloc 注:類方法中不能使用實例變量

實例方法:只能對象使用,例如:_(void)sayHi

OC中實例變量可見度、setter、getter方法和自定義初始化方法

類中不能出現同名方法

“ :”標識參數,不能省略。有冒號必須有參數

方法的使用

OC中實例變量可見度、setter、getter方法和自定義初始化方法



自定義初始化方法

h文件中:

OC中實例變量可見度、setter、getter方法和自定義初始化方法

m文件中:

OC中實例變量可見度、setter、getter方法和自定義初始化方法


#import

導入頭文件,即:導入頭文件中的內容到當前類。

#import“”導入自定義類。#import<>導入類庫中的頭文件

功能類似C語言中的#include,但是可以避免文件被重復導入


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

将乐县| 伊宁市| 尼勒克县| 包头市| 裕民县| 基隆市| 手游| 共和县| 大连市| 南汇区| 兴仁县| 清丰县| 上杭县| 奎屯市| 龙川县| 汽车| 岳阳县| 崇文区| 丹阳市| 黄陵县| 阿拉善右旗| 成武县| 香格里拉县| 六安市| 临沭县| 黄冈市| 怀集县| 治县。| 高密市| 双柏县| 安岳县| 利川市| 上杭县| 沙河市| 林周县| 乳山市| 福海县| 中方县| 集贤县| 南投县| 海安县|