5属性和下标

import UIKit

var str = "Hello, playground"

// 1 存储属性
// 分为 常量属性  和 变量属性

// 延迟加载属性
class Employee1{
    var no:Int = 0;
    lazy var depart:Depart1 = Depart1();
    
}

struct Depart1{
    var name:String = "";
}

// 以下代码在创建Employee1 的时候,会同时实例化Depart1部门
// 所以可以加一个var 修饰 使用延时加载,只在调用的时候进行加载访问
let e = Employee1();
e.depart.name;

// 属性观察者
// willset 在设置属性之前调用
// didset 在设置属性之后调用


// 2 计算属性
// 本事不存储数据 是从存储属性中计算得到数据
// getter 取值访问器  setter 设置访问器
class Employee2{
    
    var firstName:String = "Alex";
    var secondName:String = "Yeah";
    var fullName:String{
        // get
        get {
            return firstName + "." + secondName;
        }
        // set
        set(newName){
            var name = newName.components(separatedBy: ".");
            firstName = name[0];
            secondName = name[1];
        }
    }
}

let e2 = Employee2();
// 调用get
e2.fullName;
// 调用set
e2.fullName = "Tom.Dog";


// 计算属性
// 类中不能定义静态属性

// 3 下标
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值