黑马程序员技术交流社区

标题: Get Set方法 [打印本页]

作者: 维维轩    时间: 2015-10-28 09:45
标题: Get Set方法
因为一些不恰当的因素,所有自动生成的set,get方法已经不能满足要求,所以就要重写set或get方法,来达到我们的要求
举例说明问题
//Gun.h文件中
#import <Foundation/Foundation.h>


@interface Gun : NSObject



@property int bulletCount;//子弹数量(加强版)



@end



Gun.m文件中


#import "Gun.h"



@implementation Gun



//重写set方法,记住不要随便重写系统的方法





//当set,get方法都重写了之后,属性值也不会再自动生成,要想使用属性值,必须手动生成


-(void)setBulletCount:(int)bulletCount{


    //过滤



    if (bulletCount >0) {


        _bulletCount = bulletCount;


    }else{


        _bulletCount = 0;


    }


}






//-(int)bulletCount{


//    return _bulletCount;


//}


@end



main.m文件中


#import <Foundation/Foundation.h>


#import "Gun.h"



int main(int argc, const char * argv[])


{




    Gun *gun1 = [Gun new];


   


    gun1.bulletCount = -4;


   


    NSLog(@"子弹个数%i",gun1.bulletCount);


    return 0;


}
作者: xqlyn123    时间: 2015-10-28 11:29
----------------------------------------好
作者: xqlyn123    时间: 2015-10-28 11:32
--------------------------------------好
作者: yanggangcl    时间: 2015-10-28 19:41
代码行距好大。。。
作者: arhui    时间: 2015-10-28 19:51
代码写的不怎么好看
作者: b31b33b34    时间: 2015-11-4 21:34
代码写的很强大。。。
作者: 飞奔的小鱼    时间: 2015-11-5 13:26
恩,看得有点费劲,这样写代码在公司会被骂的。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2