从init得到的对象可能不是你想要的
2017-09-18 本文已影响0人
Stroman
init返回的并不一定是一个新创建的对象,这种情就发生在该对象或者该对象中的某属性是单例的时候。
如果你新创建的对象被旧的对象替换掉了,那么这样你就得不到预期的效果。
也有可能init初始化失败就返回的就是nil,所以你要判空。
另外,重复初始化还会引起异常。
init返回的并不一定是一个新创建的对象,这种情就发生在该对象或者该对象中的某属性是单例的时候。
如果你新创建的对象被旧的对象替换掉了,那么这样你就得不到预期的效果。
也有可能init初始化失败就返回的就是nil,所以你要判空。
另外,重复初始化还会引起异常。