IOS 杂笔-19(属性与变量的优缺点) 在前面的文章中我介绍了属性与变量的区别.这篇博客我将会简单介绍一下属性与变量的优缺点. 变量 优点: 访问速度快 缺点: 使用不灵活 属性 缺点: 耗时 优点: 防止对象被提前创建 防止对象重复创建 防止对象使用时,还没被创建 可以在懒加载方法里面,进行初始化操作…
iOS 杂笔-21(self.name = "object" 和 _name ="object" 有什么不同?) 问题如题,这是考察对属性与变量的了解而已. self.name = "object" 是self调用了setName: _name ="object" 是对变量的直接赋值 (属性与变量的优缺点我在前面的文章有错提及)…
iOS 杂笔-25(不要用copy修饰NSMutableString) 首先对题目进行简单的解释,我所说的不要用copy修饰NSMutableString不是说完全不可以用.但是要清楚一点,既然使用NSMutableString就是想应用它的可变属性,然而当我们用copy修饰NSMutableString后当我们实例化时,生成的是不可变的,当我们第一次使用可变操作时程序会崩溃,因此说不要用copy修饰NSMutableString,与其同理的还有可变数组等.下面是验证操作. 用copy修饰NSM…
iOS 杂笔-22(万年一遇~一张图片对代理的理解) 建议:本博客需要对代理有一定了解方可阅读(反正我也管不到) 图片 在图片之外设置协议(没有这东西这篇博客也就是夭折了) 下面我对图片中出现的形形色色的元素进行介绍(需要耐心,虽然东西很少) (委托) 表示的是委托方(可以理解为你的老板) (代理) 表示的是代理方(可以理解为你自己) A 没用的标识 B 没用的标识 id delegate 这里是你老板的一个属性,但是他可不一般,他遵守着协议而且他的作用是用手指挥着你 为什么不是用线牵着呢???…
iOS 杂笔-20(UIView和CALayer的区别与联系) 每个 UIView 内部都有一个 CALayer 在背后提供内容的绘制和显示,并且 UIView 的尺寸样式都由内部的 Layer 所提供.两者都有树状层级结构,layer 内部有 SubLayers,View 内部有 SubViews.但是 Layer 比 View 多了个AnchorPoint 在 View显示的时候,UIView 做为 Layer 的 CALayerDelegate,View 的显示内容由内部的 CALayer…
iOS 杂笔-24(常用类到NSObject的继承列表) NSString NSObject->NSString NSArray NSObject->NSArray ↑OC基本类都直接继承自NSObject↑ UIView NSObject->UIResponder->UIView UIImage NSObject->UIImage NSObject NSObject->NSObject UITableView NSObject->UIResponder->…
iOS 杂笔-23(区分各种空值) nil是一个对象指针为空 Nil是一个类指针为空 NULL是基本数据类型为空 NSNull空对象(是可以放在数组里的)…
iOS 杂笔-26(苹果禁用热更新) 苹果爸爸禁用热更新小伙伴们有什么想说的吗? 苹果爸爸禁用热更新小伙伴们有什么想说的吗? 苹果爸爸禁用热更新小伙伴们有什么想说的吗?…
属性可以用点语法,比如self.xxx,在外部调用也同样可以someClass.xxx. 属性实际上是对一组set和get方法的简单封装(oc的get方法没有get前缀),同样会自动生成一个私有的成员变量(名称为:下划线+属性名). 成员变量无论是全局还是局部的,都只能在本类或当前函数中使用,在其之外的地方无法直接调用(可以通过间接的方式调用). 在本类使用时,属性self.xxx会给私有的_xxx变量增加一次引用计数,相当于多retain了一次.如果不使用ARC,分别给普通变量和属性赋值,打印…
kvc: 键值编码的基本概念 1:键值编码是一个用于间接访问对象属性的机制,使用该机制不需要调用存取方法和变量实例就可以访问对象属性. 2:键值编码方法在Objective-C非正式协(类别)NSKeyValueCoding中被声明,默认的实现方法由NSObject提供. 3:键值编码支持带有对象值的属性,同时也支持数值类型和结构.非对象参数和返回类型会被识别并自动封装/解封. KVC 再某种程度上提供了访问器的替代方案.不过访问器方法是一个很好的东西,以至于只要是有可能,KVC也尽量在访问器方…