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 属性的话,可以看到只有一次输出。
  • 相关阅读:
    取最小未用的账号
    Oracle 同义词
    RMAN备份报 RMAN-06059 错误
    Oracle11g memory_target
    基础记录
    uboot启动流程
    android有关生命周期探讨
    can协议
    java虚拟机
    内存管理机制
  • 原文地址:https://www.cnblogs.com/coderYDW/p/14412663.html
Copyright © 2011-2022 走看看