美文网首页swift日常
swift中定义属性时的一个小问题

swift中定义属性时的一个小问题

作者: oldmonster | 来源:发表于2019-05-06 17:58 被阅读0次

在OC中我们平时定义属性时都是通过重写getter方法在其中实例化对象。但在swift中也有了懒加载的关键字,如下,平时我们通过懒加载实例化对象的方式:

    lazy var iconImageView: UIImageView = {
        let imageView = UIImageView()
        imageView.image = UIImage(named: "icon_loading")
        return imageView
    }()

但以下面的方式去实例化对象呢,这个时候你每次去获取该对象拿到的就不是同一个对象了。


    
    var iconImageView: UIImageView {
        let imageView = UIImageView()
        imageView.image = UIImage(named: "icon_loading")
        return imageView
    }

可以看看控制台po出来的信息:


企业微信截图_8599ad62-40ff-4f32-95f2-5ffa671873d5.png

我也是因为不小心没写成懒加载的方式,找了半天的问题所在,原因在此,所以以后各位写代码还是要仔细哟!

相关文章

  • swift中定义属性时的一个小问题

    在OC中我们平时定义属性时都是通过重写getter方法在其中实例化对象。但在swift中也有了懒加载的关键字,如下...

  • Swift开发小tips

    1.protocol中定义属性 swift的protocol中可以定义属性。 protocol的属性必须是var修...

  • Swift属性

    引言 在Swift中,属性分为两大类,存储属性,计算属性。 一.存储属性 存储属性定义:随处可见,存储的是一个值,...

  • 属性

    存储属性其实Swift中的存储属性就是以前学习OC中的普通属性, 在结构体或者类中定义的属性, 默认就是存储属性*...

  • 宏定义 define

    // 宏定义 define // Swift 中宏定义被去除了,取代的是 let 或者 get 属性 // 例如 ...

  • swift4的坑

    @objc在oc中引用Swift中的属性的时候,如果需要调用这个属性的set方法,则在定义这个属性的前面加个 '@...

  • Swift3中的一些小变化

    解档存储自定义对象时的问题 之前Swift2中解档对象时的方法,从plist中读取两个String属性和一个Dou...

  • swift --1 extension扩展

    swift 中的扩展可以: 添加计算型属性和计算型静态属性 定义实例方法和类型方法 提供新的构造器 定义下标 定义...

  • 从零学习Swift 07:属性

    Swift 中的属性分为两大类:存储属性 , 计算属性 一: 存储属性 存储属性类似于成员变量,定义方式很简单: ...

  • 每天学一点Swift----面向对象上(四)

    七.存储属性 1.存储属性指的是存储在类、结构体里的变量或常量。 2. Swift中定义存储属性的语法与定义变量或...

网友评论

    本文标题:swift中定义属性时的一个小问题

    本文链接:https://www.haomeiwen.com/subject/brvdoqtx.html