成员变量和属性
来源:互联网 发布:淘宝网怎么登不上 编辑:程序博客网 时间:2024/06/05 14:20
成员变量的作用域@interface Person : NSObject { /* 成员变量的作用域 <1.@public 完全公开成员变量 <2.@private 只有在自己内部才可以直接访问 <3.@protected 只有在自己的内部或者子类的内部才可以‘直接访问’ _方式 , 成员变量默认都是@protected的 在类外部不能直接访问,public可以。 类的实例->成员变量 */// NSString *_name;// int _age;// @public// int _number;}属性生成器// 属性生成器 @property/* <1.自动的生成 getter和setter方法的 声明 <2.需要知道 参数类型和属性名称 <3.是编译器的特性 */// @synthesize 生成getter 和 setter方法,最为简单的实现//@synthesize name = _name; // 跟成员变量 _name 绑定//@synthesize age = _number; // 跟成员变量_number 绑定// @synthesize age = _number;即- (void)setAge:(int)age { _number = age;}- (int)age { return _number;}在点语法访问age的时候,得到的是_number的值设置age的时候,设置的是_number的值// xcode4.5之后代码变得简单只需要写 @property int age;系统会自动生成////@implementation PersonTest {// int _age;// @implementation中可以声明成员变量,外部无法访问//}////@synthesize age = _age;////- (void)setAge:(int)age {// _age = age;//}//- (int)age {// return _age;//}<pre name="code" class="objc"> // 如果子类想要对父类中的私有变量进行操作 ,就要写setter。getter方法 // 成员变量默认声明是@protected 只有在自己的内部或者子类的内部才可以‘直接访问’ 如果想要在外部访问的话,就需要写setter getter 方法 // 如果一个类声明了成员变量为 @private 只能在本类中使用 如果子类想要对父类中的私有变量进行操作 ,就要写setter。getter方法
// 当真的需要控制成员变量的值的时候,可以选择重写setter方法// 如果setter 和getter 都重写了,@property就不会自动帮助我们生成以_开头的成员变量了//@implementation PersonTest {// int _age;// @implementation中可以声明成员变量,外部无法访问//}需要我们要自己声明
0 0
- 成员变量和属性
- 成员变量 和 属性
- 成员变量和属性
- ios 属性(属性变量)和成员变量
- OC成员变量和属性
- 成员变量和属性@property
- @property属性和成员变量
- runtime 成员变量和属性
- 属性,实例变量和成员变量
- runtime 成员变量和属性变量
- OC中成员变量和属性变量
- C#属性和成员变量的区别?
- OC 成员变量和属性的区别 .
- OC 成员变量和属性的区别
- 为category添加属性和成员变量
- OC 成员变量和属性的区别
- C#属性和成员变量的区别?
- 类的成员变量和 属性
- Linux IO
- 高吞吐量系统设计优化建议
- Leetcode Exercise
- Qt Quick之ListView单元的上下拖动功能实现
- FFmpeg库 32位和64位
- 成员变量和属性
- HDU 5364 Distribution money 模拟
- 有个库 snbcg ,加了宽字符版,lib和dll更名成snbcgu.lib snbcgu.dll
- node.js文件拷贝(复制)
- 【VR】Leap Motion 官网文档 ToolModel (工具模型)
- ubuntu 14.04 删除ibus输入法引发的问题及解决方法
- 毛玻璃效果
- node.js中同步和异步共同使用时应额外注意
- Android中实现多线程下载的两种方式示例及浅析之二(Thread加断点续传)