標籤:
Objective-C中得get和set方法
set方法
1.作用: 提供一個方法給外界設定成員變數值,可以在方法裡面對參數進行相應過濾
2.命名規範:
1> 方法名必須以set開頭
2> set後面跟上成員變數的名稱,成員變數的首字母必須大寫
3> 傳回值一定是void
4> 一定要接收一個參數,而且參數類型跟成員變數類型一致
5> 形參的名稱不能跟成員變數名一樣
- (void)setAge:(int)newAge;
get方法
1.作用:返回對象內部的成員變數
2.命名規範:
1> 肯定有傳回值,傳回值類型肯定與成員變數類型一致
2> 方法名跟成員變數名一樣
3> 不需要接收任何參數
- (int)age;- (void)study;
定義一個Student類,擁有一個成員變數age和對應的get\set方法。
1.Student.h
1 #import <Foundation/Foundation.h> 2 3 @interface Student : NSObject 4 5 { 6 // 成員變數盡量不要使用@public 7 int age; 8 } 9 10 - (void)setAge:(int)newAge;11 - (int)age;12 13 @end
1> 在第7行定義了一個成員變數age,是@protected許可權的,所以外界不能直接存取它
2> 在第10、11行分別聲明了age變數的set方法和get方法
2.Student.m
1 #import "Student.h" 2 3 @implementation Student 4 5 - (void)setAge:(int)newAge { 6 age = newAge; 7 } 8 9 - (int)age {10 return age;11 }12 13 @end
1> 在第5行實現了set方法
2> 在第9行實現了get方法
3.main.m
把定義好的Student類放到main函數中使用
1 #import <Foundation/Foundation.h> 2 #import "Student.h" 3 4 int main(int argc, const char * argv[]) 5 { 6 @autoreleasepool { 7 Student *stu = [[Student alloc] init]; 8 9 // 設定age的值10 [stu setAge:10];11 12 // 取出age的值13 int age = [stu age];14 15 NSLog(@"age is %i", age);16 17 [stu release];18 }19 return 0;20 }
1> 在2行包含Student的標頭檔
2> 在第7行建立Student對象,在第17行釋放Student對象
3> 在第10行調用set方法設定age的值
4> 在第13行調用get方法擷取age的值
5> 在第15行輸出age的值,輸出結果如下:
2015-05-09 22:03:57.345 a.out[2643:707] age is 10
這就是OC傳統的get方法和set方法的簡單使用。
黑馬程式員---Objective-C基礎學習---get和set方法