iOS开发-OC中的实例变量
2015-11-08 17:38
316 查看
实例变量可见度(提高程序的安全性)
所有的面向对象语言都有可见度的
常见的有三种(实例对象的方法中,也就是说在 - 号方法中才行)
Public (公有的) 实例变量可以在类的外部和内部操作
Protected(受保护的,默认的) 实例变量只能在该类和其子类操作
private(私有的) 实例对象只能在该类内访问
在oc的面向对象语言里,所有的实例变量默认的可见度都是被保护类型的
//被保护类型的实例变量可以在本类实现文件的范围内进行赋值
具有继承关系的两个类 ,子类可以拥有父类的一切,(包括他的实例变量和行为)(除了父类中的私有变量和私有方法 在oc中不存在)
实例变量是实例对象的成员变量
方法
类方法一定是便利构造器,构造器不一定是类方法
类方法不能使用实例变量
@interface
Person : NSObject
//无参无返回值方法
-(void)say;
//有一个参数无返回值方法
-(void)say:(NSString
*)content;
//有两个参数无返回值的方法
-(void)say:(NSString
*)content :(NSString
*)title;
//有两个参数无返回值的方法
-(void)say:(NSString
*)content withTitle :(NSString
*)title;
//有三个参数无返回值的方法
-(void)say:(NSString
*)content :(NSString
*)title :(NSString
*)date;
@end
/*方法名
1
@selector(say)
2
@selector(say:)
3
@selector(say::)
4
@selector(say:withTitle:)
5
@selector(say:::)
*/
自定义初始方法(声明)
1, 必须是 - 号方法
2,返回值类型是 instancetype/id
3,必须的init开头
自定义初始方法(实现)
1,必须有大括号
2,一定有return self;
3,self = [super(父类) init];//保证默认值是完整的
-(id)init 这个最简单的初始化方法只能给实例变量设置默认值,不灵活。
-(id)initWithName: 自定义初始化方法,根据需求定义初始化方法
所有的实例对象只初始化一次,也只销毁一次;
所有的面向对象语言都有可见度的
常见的有三种(实例对象的方法中,也就是说在 - 号方法中才行)
Public (公有的) 实例变量可以在类的外部和内部操作
Protected(受保护的,默认的) 实例变量只能在该类和其子类操作
private(私有的) 实例对象只能在该类内访问
在oc的面向对象语言里,所有的实例变量默认的可见度都是被保护类型的
//被保护类型的实例变量可以在本类实现文件的范围内进行赋值
具有继承关系的两个类 ,子类可以拥有父类的一切,(包括他的实例变量和行为)(除了父类中的私有变量和私有方法 在oc中不存在)
实例变量是实例对象的成员变量
方法
类方法一定是便利构造器,构造器不一定是类方法
类方法不能使用实例变量
@interface
Person : NSObject
//无参无返回值方法
-(void)say;
//有一个参数无返回值方法
-(void)say:(NSString
*)content;
//有两个参数无返回值的方法
-(void)say:(NSString
*)content :(NSString
*)title;
//有两个参数无返回值的方法
-(void)say:(NSString
*)content withTitle :(NSString
*)title;
//有三个参数无返回值的方法
-(void)say:(NSString
*)content :(NSString
*)title :(NSString
*)date;
@end
/*方法名
1
@selector(say)
2
@selector(say:)
3
@selector(say::)
4
@selector(say:withTitle:)
5
@selector(say:::)
*/
自定义初始方法(声明)
1, 必须是 - 号方法
2,返回值类型是 instancetype/id
3,必须的init开头
自定义初始方法(实现)
1,必须有大括号
2,一定有return self;
3,self = [super(父类) init];//保证默认值是完整的
-(id)init 这个最简单的初始化方法只能给实例变量设置默认值,不灵活。
-(id)initWithName: 自定义初始化方法,根据需求定义初始化方法
所有的实例对象只初始化一次,也只销毁一次;
相关文章推荐
- iOS开发-前言篇C-指针以、结构体指针、作用域
- iOS开发-前言篇C-结构体
- iOS开发-前言篇C-函数
- ios中AFN的应用
- ios开发-OC的学习
- IOS毛玻璃效果
- iOS开发计算文本尺寸
- nagios配置过程详解
- Nagios部署配置实战
- IOS中的instancetype和id关键字
- ios提交代码到远程仓库
- iOS开发27-iOS 可视化编程-Size Classes
- ios tableView那些事 (十)设置 tableview 的分割线
- IOS-图片操作集合
- ios数据解析
- iOS 之使用CAShapeLayer中的CAGradientLayer实现圆环的颜色渐变
- iOS巅峰之深拷贝和浅拷贝区别
- iOS 手势识别器
- ios 开发 OC编程 类的扩展 协议 延展和 类目
- ios 开发 OC编程 内存管理