objective-c系列-@Property&点语法
2015-11-12 19:16
453 查看
//解释 property后边的圆括号中的修饰词的含义:
// nonatomic 非线程安全 非原子操作 特点是: 操作变量的效率高
// atomic 线程安全 原子操作 特点是: 操作变量的效率低
//
// retain 强引用实例变量, 即 setter方法中会有:
// -(void)setXXX:(xxx)arg
// {
// [_属性名 release];
// _属性名 = [arg retain];
// }
// 而且该类需要重写 dealloc方法
// 非oc字符串的其它所有类对象都要用retain
//
// copy 复制, 即setter方法中会有:
// -(void)setXXX:(xxx)arg
// {
// [_属性名 release];
// _属性名 = [arg copy];
// }
// 而且该类需要重写 dealloc方法
// copy适用的对象为: oc字符串, block
//
// assign 直接赋值, 即setter方法中会有:
// -(void)setXXX:(xxx)arg
// {
// _属性名 = arg;
// }
// 适用于所有非对象的数据类型:int float, char, struct
// union, void *, SEL, CLASS BOOL 枚举
// readonly 不对外提供setter方法, 限定实例变量不能被外部修改
************************************************
// 点语法
@class Person;
Person *person = [[Person alloc] init];
person.name = @"海燕";// setter方法
NSString *love = person.name; // getter方法
end
// nonatomic 非线程安全 非原子操作 特点是: 操作变量的效率高
// atomic 线程安全 原子操作 特点是: 操作变量的效率低
//
// retain 强引用实例变量, 即 setter方法中会有:
// -(void)setXXX:(xxx)arg
// {
// [_属性名 release];
// _属性名 = [arg retain];
// }
// 而且该类需要重写 dealloc方法
// 非oc字符串的其它所有类对象都要用retain
//
// copy 复制, 即setter方法中会有:
// -(void)setXXX:(xxx)arg
// {
// [_属性名 release];
// _属性名 = [arg copy];
// }
// 而且该类需要重写 dealloc方法
// copy适用的对象为: oc字符串, block
//
// assign 直接赋值, 即setter方法中会有:
// -(void)setXXX:(xxx)arg
// {
// _属性名 = arg;
// }
// 适用于所有非对象的数据类型:int float, char, struct
// union, void *, SEL, CLASS BOOL 枚举
// readonly 不对外提供setter方法, 限定实例变量不能被外部修改
************************************************
// 点语法
@class Person;
Person *person = [[Person alloc] init];
person.name = @"海燕";// setter方法
NSString *love = person.name; // getter方法
end
相关文章推荐
- Objective-C学习—UIWebView的使用
- 【FAQ】Gradle编译,error while loading shared libraries: libstdc++.so.6: cannot open shared object file
- 快速让你明白Objective-C的语法(和Java、C++对比)
- 关于CAD各个版本使用编码方式的总结:
- Java:由Object.clone()而引出的protected权限问题
- Objective-C 程序设计 第十一章
- Objective-C 之 消息机制详解
- [并发并行]_[Object-C]_[使用NSMutableArray等非线程安全集合类的注意事项]
- [并发并行]_[Object-C]_[使用NSMutableArray等非线程安全集合类的注意事项]
- fastjson包JSONObject.toJSON导致DTO部分属性丢失问题
- swfobject.js的简单配置
- VC++ error C2248: “CObject::CObject”: 无法访问 private 成员(在“CObject”类中声明)
- From C++ to Objective-C
- iOS 程序报错:reason: [NSArrayI addObject:]: unrecognized selector sent to instance
- Objective C运行时(runtime)技术的几个要点总结
- object-c:委托(delegate)
- Objective-C的Runtime
- 使用Xcode HeaderDoc和Doxygen文档化你的Objective-C和Swift代码
- checkBox1_CheckedChanged(object sender, EventArgs e)和checkBox1_CheckStateChanged(object sender, EventArgs e)不同
- C# waitformultipleobjects()