第16条:提供“全能初始化方法”
2016-03-23 11:03
302 查看
为对象提供必要信息以便其完成工作的初始化方法叫做“全能初始化方法”,也可以称为“指定初始化方法”。
例如
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(nullable NSString *)reuseIdentifier
,NSDate 的
-(id)initWithTimeIntervalSinceReferenceDate:(NSTimeInterval)seconds
要点
在类中提供一个全能初始化方法,并于文档里指明。其他初始化方法均应调用此方法。
若全能初始化方法与超类不同,则需覆写超类中的对应方法。
如果超类的初始化方法不适用于子类,那么应该覆写这个超类方法,并在其中抛出异常。
例如
UITableViewCell中的初始化
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(nullable NSString *)reuseIdentifier
,NSDate 的
-(id)initWithTimeIntervalSinceReferenceDate:(NSTimeInterval)seconds
要点
在类中提供一个全能初始化方法,并于文档里指明。其他初始化方法均应调用此方法。
若全能初始化方法与超类不同,则需覆写超类中的对应方法。
如果超类的初始化方法不适用于子类,那么应该覆写这个超类方法,并在其中抛出异常。
相关文章推荐
- java实现附件预览(openoffice+swftools+flexpaper)
- Sublime Text2/3怎样在Mac OSX中配置CTags插件
- SpringBoot 配置文件 application.properties(二)
- uboot目录结构分析
- Android常用的一些make命令
- ArrayList源码剖析
- BZOJ_P1096 [ZJOI2007]仓库建设(斜率优化DP)
- Oracle11g无法导出空表解决方案
- Registry(注册表)
- 一致性hash原理与实现
- -Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable
- Spring Security(18)——Jsp标签 博客分类:
- 打狗棒法之:Cknife(C刀)自定义模式秒过安全狗
- 自定义View笔记之绘制画笔
- Vollery的简单二次封装
- mssql手工注入及绕过术
- String类中常用的操作
- VS2012打包Winform教程 [转]
- 8086汇编笔记——概述
- springMVC的入门