美文网首页
Swift中的懒加载

Swift中的懒加载

作者: 下班不写程序 | 来源:发表于2019-10-08 19:48 被阅读0次
    1. OC中只要对象为nil 就会重新创建对象.
    2. Swift中为nil也算创建对象成功了, 因为Swift懒加载包含了可选值
        /* 对比OC 了解懒加载
         - 相同点: 都是全局变量
         
         - 不同点:
         - 在OC 中, 是重写get方法
         - 特点: 在我们需要的时候实例化, 会把当前这个对象保存起来, 当再次需要使用的时候, 直接拿出来使用.
         
         - 在Swift 中, 使用 lazy 来修饰懒加载
         - 目的: 延迟创建, 当需要的时候再去创建
         */
    
    import UIKit
    
    class ViewController: UIViewController {
    
        // 懒加载的写法 01 -- 只想把对象实例化成功, 不关心其属性的赋值
        // 格式: lazy var 名字: 类型 = 类型()
        lazy var lab1: UILabel = UILabel()
    
        // 懒加载的写法 02 -- 不仅要把对象实例化成功, 并且其属性需要有我想要的初始值
        // 格式: lazy var 名字: 类型 = {实例化一个对象, 并且返回}()
        lazy var lab2: UILabel = {
            
            let label: UILabel = UILabel()
            label.text = "label"
            return label
        }()
        
        override func viewDidLoad() {
            super.viewDidLoad()
            // Do any additional setup after loading the view, typically from a nib.
        }
    }
    

    相关文章

      网友评论

          本文标题:Swift中的懒加载

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