美文网首页
iOS9 新加关键字

iOS9 新加关键字

作者: 书生可笑 | 来源:发表于2017-04-24 16:34 被阅读5次

    // iOS9 新出的关键字:用来修饰属性,或者方法的参数,方法的返回值

    // 好处

    // 迎合swift

    // 规范化

    /*

    nullable:表示可以为空

    nullable 书写规范

    方式一

    @property(nonatomic, strong, nullable) NSString *name;

    方式二

    @property(nonatomic, strong) NSString *_Nullable name;

    方式三

    @property(nonatomic, strong) NSString *__nullable name;

    */

    /*

    nonnull:表示不可为空

    @property(nonatomic, strong) NSString *_Nonnull name;

    @property(nonatomic, strong, nonnull) NSString * name;

    @property(nonatomic, strong) NSString *__nonnull name;

    */

    /*

    - (nonnull NSString *)test;

    - ( NSString * _Nonnull)test1;

    - ( NSString * _Nonnull)test2:(nonnull  NSString *)test2;

    */

    /*

    在这个之间都默认添加 nonull 关键字

    NS_ASSUME_NONNULL_BEGIN

    NS_ASSUME_NONNULL_END

    NS_ASSUME_NONNULL_BEGIN

    @property (nonatomic) NSString *name22;

    NS_ASSUME_NONNULL_END

    */

    /*

    null_resettable  get方法不能为空 set可以为空 重写set或者get方法,处理参数值为空的情况

    - (NSString *)name

    {

    if (_name == nil) {

    _name = @"1";

    }

    return _name;

    }

    */

    /*

    _Null_unspecified 不确定是否为空

    书写方式只有这种

    @property(nonatomic, strong,null_unspecified) NSString * name;

    @property(nonatomic, strong) NSString * _Null_unspecified name;

    @property(nonatomic, strong) NSString * __null_unspecified name;

    */

    // 注意://iOS 9 新出的关键字,不能修饰基本数据类型

    相关文章

      网友评论

          本文标题:iOS9 新加关键字

          本文链接:https://www.haomeiwen.com/subject/dqupzttx.html