oc中的 getter 和setter方法 浅析示例

来源:互联网 发布:sql server 主键自增 编辑:程序博客网 时间:2024/06/05 04:54
-setter方法根据所更改的变量名称来命名
  
           //setter 方法,用于赋值,格式:-(voidset变量名(首字母大写):(成员变量类型)型参名
-(void)setName:(NSString*)newName;

-getter方法根据所取得的变量名称来命名

     //getter用于取值,所以需要一个返回值,此返回值类型与成员变量类型保持一致,格式:-(成员变量类型)成员变量名
-(NSString*)name;


Student.h
#import<Foundation/Foundation.h>

@interfaceStudent : NSObject{
   
NSString *name;
   
int      age;
}
//setter方法,用于赋值,格式:-(void)set变量名(首字母大写):(成员变量类型)形参名
-(
void)setName:(NSString*)newName;

//getter,用于取值,所以需要一个返回值,此返回值类型与成员变量类型保持一致,格式:-(成员变量类型)成员变量名
-(
NSString*)name;

-(
void)setAge:(int)age1;

-(
int)age;

@end
Student.m
#import"Student.h"

@implementationStudent

-(
void)setName:(NSString*)newName{
   
name = newName;
}

-(
NSString*)name{
   
return name;
}

-(
void)setAge:(int)age1{
   
if (age1 > 100 || age1 < 0) {
       
NSLog(@"年龄不合理,请重新赋值");
    }
else{
       
age = age1;
    }
}

-(
int)age{
   
return age;
}

@end
main.m
#import<Foundation/Foundation.h>
#import
"Student.h"
intmain(intargc, const char * argv[]) {
   
@autoreleasepool {
       
Student *stu = [[Studentalloc]init];
        [stu
setName:@"老王头"];
        [stu
setAge:90];
       
       
NSString *name = [stuname];
       
       NSLog(@"我隔壁住着:%@-%d",name,stu.age);
       
    }
   
return 0;
}
0 0
原创粉丝点击