swift 懒加载

一、swift——懒加载

1、懒加载的格式:

定义变量之前用lazy修饰,后面通过赋值一个闭包

注意点:1、必须用var   2、闭包后面必须要跟上()

如果闭包用于懒加载,那么in之前的代码都有可以删除

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

    //格式:定义变量前面用lazy修饰变量,后面通过等到赋值一个闭包
    //注意点:1、必须是用var 2、闭包后必须要跟上()
    
    //如果闭包用于懒加载,那么in之前的代码都可以删除
    lazy var dataList:[String] = {
      ()->[String]
      in
        print("我被加载了")
      return ["zhujia","xiuxiu"]
    }()
    
    lazy var data:[String] = {
       return ["123","345"]
    }()
    
    override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
        print(dataList)
        print(dataList)
        print(dataList)
        print(data)
    }
    
}

二、get和set方法

person.swift :

import UIKit

class Person: NSObject {

    var gender : String?{
       //设置完值之后调用
        didSet
        {
           print(gender)
        }
    }
    
    //如果只重写了get方法,那么这个属性我们称之为 计算型 属性
    //也就是对应OC中的只读属性
    //注意点:计算型属性不占用内存空间的
    var age:Int?{
        get{
           return 30
        }
    }
}
viewController.swift:
class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
      
        //在swift中如果想使用某一个类,不用#import头文件
        //因为swift中新增了一个oc中没有的概念,命名空间
        //只要是在同一个命名空间下的资源都是共享的
        //默认情况下,项目名称就是命名空间
        
        //正是因为这样,所以在做swift开发时有很多的坑,所以在使用第三方框架的时候,建议使用cocoapods,这样可以有效的避免三方框架中的类名和自己项目中的类名重名
        let p = Person()
        p.gender = "zhujia"
        
//        p.age = "99"
        print(p.age)
    }
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值