#import <Foundation/Foundation.h> @interface Student:NSObject { //成員變量儘可能不要用@public int age; } /*set方法 做用:提供一個方法給外界,設置age屬性值,能夠在方法裏面對參數過濾 命名規範:1)方法名必須以set開頭 2)set後面跟上成員變量的名稱,成員變量的首字母必須大寫 3)返回值必定是void 4)必定要接收一個參數,並且參數類型跟成員變量類型一致 5)行參的名稱不能跟成員變量名同樣 */ /*get方法 1.做用:返回對象內部的成員變量 2.命名規範:1)確定有返回值,返回值類型確定與成員變量類型一致 2)方法名跟成員變量名一致 3)不須要接收任何參數 (readonly)只容許外界訪問,不容許外界修改的,要用get方法 */ - (void)setAge:(int)newAge; - (int)age; - (void)study; @end @implementation Student - (void)study { NSLog(@"%d的學生在學習",age); } //set方法的實現 - (void)setAge:(int)newAge { //對傳進來的數據進行過濾 if(newAge<=0) { newAge=1; } age=newAge; } - (int)age { return age; } @end int main() { Student *stu=[Student new]; [stu setAge:-10]; NSLog(@"學生的年齡是%d歲",[stu age]); [stu study]; }