1、set方法與get方法簡介
(1) @public作用域下的成員變數可以被外界任意賦值,往往會產生髒資料(不合理的資料),比如:人的年齡不可能為負。
以後成員變數儘量不要使用@public
(2) 我們可以使用set方法和get方法來管理成員的訪問(類似安檢,過濾掉不合理的物件)。
(3) 3種操作: a. 只寫(set) b. 只讀(get) c.可讀寫(get set)。
(4) get set 方法只用來讀寫成員變數值,不能對其他方法進行操作。
(5) get set 屬於物件方法。
2、set方法
(1) 作用:給外界提供一個方法用來訪問或設定成員變數值,可以在方法裡面過濾掉一些不合理的值。
(2) set 方法相當於寫操作
(3) 命名規範:
1> set方法以減號 - 開頭(物件方法);
2> 方法名必須以set開頭,set後面跟上成員變數去掉下劃線的部分,成員變數的首字母必須大寫;
例如: - (void)setAge: (int)age; 方法名是 setAge:
3> 返回值一定是void;
4> 一定要接收一個引數,而且引數型別跟成員變數型別一致;
5> 形參的名稱不能跟成員變數名一樣。
例如: 成員變數 int _age; 成員變數名稱是 _age
對應的set方法:- (void)setAge: (int)age; 形參名稱是 age
二者不一樣,此處再次體會下劃線的好處。
3、get方法
(1) 作用:返回物件內部的成員變數
(2) get 方法相當於 讀操作
1> get 方法以減號 - 開頭;
2> 方法名跟形參名稱一樣,即成員變數名稱去掉下劃線後剩下的部分
- (void)setAge: (int)age; 形參名稱是 age
- (int)age; get方法名稱是 age
3> 肯定有返回值,返回值型別肯定與成員變數型別一致
4> 不需要接收任何引數
例如: - (int)age;
4、成員變數命名規範
1> 成員變數都以下劃線_開頭
2> 可以跟get方法的名稱區分開 _age(成員變數名) age(get方法名)
3> 可以跟其他區域性變數區分開,一看到下劃線開頭的變數,肯定是成員變數
成員變數名稱以下劃線開頭的好處:
1>可以防止與set方法的形參名稱以及get方法的方法名重名。
2>可以更加方便地找到想找的成員變數。
1、set方法與get方法簡介
(1) @public作用域下的成員變數可以被外界任意賦值,往往會產生髒資料(不合理的資料),比如:人的年齡不可能為負。
以後成員變數儘量不要使用@public
(2) 我們可以使用set方法和get方法來管理成員的訪問(類似安檢,過濾掉不合理的物件)。
(3) 3種操作: a. 只寫(set) b. 只讀(get) c.可讀寫(get set)。
(4) get set 方法只用來讀寫成員變數值,不能對其他方法進行操作。
(5) get set 屬於物件方法。
2、set方法
(1) 作用:給外界提供一個方法用來訪問或設定成員變數值,可以在方法裡面過濾掉一些不合理的值。
(2) set 方法相當於寫操作
(3) 命名規範:
1> set方法以減號 - 開頭(物件方法);
2> 方法名必須以set開頭,set後面跟上成員變數去掉下劃線的部分,成員變數的首字母必須大寫;
例如: - (void)setAge: (int)age; 方法名是 setAge:
3> 返回值一定是void;
4> 一定要接收一個引數,而且引數型別跟成員變數型別一致;
5> 形參的名稱不能跟成員變數名一樣。
例如: 成員變數 int _age; 成員變數名稱是 _age
對應的set方法:- (void)setAge: (int)age; 形參名稱是 age
二者不一樣,此處再次體會下劃線的好處。
3、get方法
(1) 作用:返回物件內部的成員變數
(2) get 方法相當於 讀操作
(3) 命名規範:
1> get 方法以減號 - 開頭;
2> 方法名跟形參名稱一樣,即成員變數名稱去掉下劃線後剩下的部分
例如: 成員變數 int _age; 成員變數名稱是 _age
- (void)setAge: (int)age; 形參名稱是 age
- (int)age; get方法名稱是 age
3> 肯定有返回值,返回值型別肯定與成員變數型別一致
4> 不需要接收任何引數
例如: - (int)age;
4、成員變數命名規範
1> 成員變數都以下劃線_開頭
2> 可以跟get方法的名稱區分開 _age(成員變數名) age(get方法名)
3> 可以跟其他區域性變數區分開,一看到下劃線開頭的變數,肯定是成員變數
成員變數名稱以下劃線開頭的好處:
1>可以防止與set方法的形參名稱以及get方法的方法名重名。
2>可以更加方便地找到想找的成員變數。