#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]; }