02 例項變數可見度 方法

2021-06-27 04:45:06 字數 2144 閱讀 7588

一 例項變數可見度

所謂的內部,指的是相應類@implementation…@end之間

@inte***ce person : nsobject

這裡不使用@public,為什麼呢?

1) 使用@public關鍵字,暴露了類內部的細節

2)不符合物件導向語言的三大特性之一 ------封裝

如何在其他檔案中訪問物件@protected修飾的例項變數?

賦值:通過方法傳入引數,在類的內部實現例項變數賦值

取值:通過方法獲取例項變數的值

由此引入方法

二 方法

1)簡介

oc中的方法有兩種:類方法和例項方法

類方法:只能類使用,例如: +(id)alloc

注意:類方法中不能使用例項變數

例項方法:只能物件使用,例如: -(void)sayhi;

2)方法的宣告

方法名(replaceobjectatindex)需注意的地方

1)類中不能出現同名方法

2)' : '標識引數,不能省略. 有冒號必須有引數.

3)方法中的賦值 , 取值方法

//宣告給name 賦值的方法

- (void)setname:(nsstring *)newname;

//宣告獲取name值的方法

- (nsstring *)getname;

4)多引數方法

//多引數的方法

- (void)setname:(nsstring *)name

age:(int)age

gender:(nsstring *)gender;

5)方法的使用

1)在oc中使用訊息傳送機制: [receiver message]

2)正確表述: 給student物件傳送sayhi訊息

1) student接收到訊息

2) student找到sayhi方法,並執行

三 setter  getter

1)簡介

在oc裡,為例項變數賦值的方法稱作setter (設定器)

讀取例項變數值的方法稱作getter (訪問器)

我們之前寫的那些賦值取值的方法都可以稱作setter 和 getter

setter的書寫格式:set+首字母大寫的例項變數名

getter的書寫格式:方法名與例項變數名相同

2)setter getter

無論setter 還是getter內部操作的是例項變數

每乙個例項變數都需要一對setter getter方法

3)自定義初始化

1)簡介

- (id)init這個初始化只能給例項變數設定預設值,不靈活

- (id)initwithname:自定義初始化方法,根據需求定義初始化方法

2)示例

//宣告自定義初始化方法

//instancetype 代表任意型別

- (instancetype)initwith:(nsstring *)name

score:(cgfloat)score;

//實現自定義初始化方法

- (instancetype)initwithname:(nsstring *)name

score:(cgfloat)score

classname:(nsstring *)classname

height:(cgfloat)height

//3.返回

return self;

}四 #import  和 @class 

1)#import

匯入標頭檔案,即:匯入標頭檔案中的內容到當前類;

#import " "匯入自定義類, #important< >匯入類庫中的標頭檔案;

功能類似c語言中的#include,但是可以避免標頭檔案被重複匯入;

容易出現迴圈匯入檔案問題;

2)@class

告訴編譯器@class後的字串作為類名使用,並未匯入類的介面內容

有效避免巢狀迴圈匯入

OC之例項變數可見度和方法

一 例項變數的可見度 例項物件 安全性 可見度 特點 public 公有的 例項變數可以在類的外部和內部操作 protected 受保護的,預設的 例項變數只能在該類和其子類內操作 private 私有的 例項物件只能在該類內訪問 在oc裡面,所有的例項物件預設的可見度是受保護的,protected...

成員變數可見度與方法

定義分數 fraction 類 1 成員變數 分子 分母 2 方法 1 自定義初始化方法 初始分子和分母 2 分子的賦值 取值方法 3 分母的賦值取值方法 4 列印分數資訊 5 約分 6 加 減 乘 除運算方法,返回分數物件。3 mian.m檔案中建立分數物件,測試加 減 乘 除。import in...

iOS入門(十六)例項變數可見度和方法

例項變數可見度和方法 public private protected 可見度預設為 protected 在 main 檔案中通過賦值和取值對不在可見度範圍內的特徵進行設定和讀取 方法分為 類方法 類方法中不能使用例項變數 例項方法 方法宣告 方法型別識別符號 返回型別 引數形容詞 引數型別 引數名...