zoukankan      html  css  js  c++  java
  • lazy懒加载

    概述:懒加载其实就是当对象需要用到的时候再去加载。

    Objective-C中我们懒加载代码大多是重写一个属性的get方法,判断是否为空,为空就创建,否则直接返回。

    - (NSObject *)obj {
        if (_obj == nil) {
            _obj = [[NSObject alloc] init];
        }
        return _obj;
    }
    

    而在Swift中,懒加载的实现方式更加简单,代码如下:

    class ClassA {
        lazy var str: String = {
            let str = "Hello"
            print("只在首次访问输出")
            return str
        }()
    }
    

    注意:

    • 我们在使用 lazy 作为属性修饰符时,只能声明属性是变量;
    • 另外我们需要显式地指定属性类型,并使用一个可以对这个属性进行赋值的语句来在首次访问属性时运行;
    • 如果我们多次访问这个实例的 str 属性的话,可以看到只有一次输出。
  • 相关阅读:
    animation循环滚动
    <canvas>简单学习
    月末总结
    回顾-总结(2)
    初识正则
    学习中小项目遇到事
    在炎热的夏天学习以提高效率
    前端存储之cookie、localStorage
    总结(1)
    jQuery
  • 原文地址:https://www.cnblogs.com/coderYDW/p/14412663.html
Copyright © 2011-2022 走看看