Swift之学习属性

作者: 闯先生的猫 | 来源:发表于2016-04-06 13:36 被阅读105次

1.属性是 对象的一个特征

2.swift 没有全局变量 都是属性 如果只想在本类 使用 可以使用关键字private修饰

1.类型属性
class var 声明的变量 类似全局变量 但是不可赋值 使用类名 调用
class var 声明的变量 类似全局变量 但是不可赋值 使用类名 调用
类型属性的公式:
class var 变量名:数据类型 {return 值}
调用:类名.变量名

 class var name: NSString {return "小明"}
调用:
 print(BB_ImageLabelView.name)

2.观察属性:
观察给属性赋值的状态 是用来监测赋值的状态
属性中 可设置 willSet didSet 来观察 属性的设置
需要注意的是:该属性 优肯被赋值成nil ,所以系统提示 需要init ->声明成可选类型?
swift 中 不存在 给一个临时的全局变量 赋值 所以 不可以使用 _age = 20 要使用 self.age = 20

公式:
var 变量名:数据类型?{
willSet{
注意:Set首字母大写
}
didSet{
检测属性赋值的状态
}

}

var age:Int?{
        willSet{
            print("将要赋值\(age)")
        }
        didSet{
            print("已经赋值\(age)")
        }
    }

let imageLabel = BB_ImageLabelView.init(frame: CGRectZero, image: UIImage.init(named:"听")!, title: "...")
        imageLabel.age = 20

3.实例属性
都是使用对象调用的
在类中声明 var 变量名:数据类型?

 var titleLabel:UILabel?//实例属性

懒加载 懒惰属性 lazy 在使用的时候 才去创建
懒加载 在创建属性的时候 同时赋值
公式:
lazy var 变量名:数据类型 = 值

lazy var list1:NSArray = ["1","2"]
    lazy var list:NSArray = NSArray()

计算属性 重写set get
公式:
var 变量名:类型{
get{
自由发挥
return xx
}
set{
自由发挥
}

OC的set方法

-(void)setName:(NSString *)name{
_name = name;
_name = [NSString stringWithFormat:@"",name];
self.view.backgroundColor = [UIColor redColor];
get方法:
-(NSString *)name{
NSLog(@"....00");
 var mmm:Int{
        get{
            return 1
        }
        set{
            
        }
    }

我了解的只有这些:如果你们有其他的,希望一起分享。

相关文章

  • swift学习之属性

    属性 存储属性 存储属性就是一个存储常量let或者变量var的属性存储属性有一个专属技能lazy(延时加载或懒加载...

  • Swift5.x- 方法(中文文档)

    引言 继续学习Swift文档,从上一章节:属性,我们学习了Swift属性相关的内容,如存储属性和计算属性set和g...

  • 《Swift从入门到精通》(七):属性

    属性(学习笔记) 环境Xcode 11.0 beta4 swift 5.1 属性(Properties)属性是把值...

  • Swift学习:属性

    本篇将详细总结介绍Swift属性的用法;属性是与特定的Swift类、结构体、枚举相关联的值;与其他语言相比,属性不...

  • Swift学习:属性

    举例: Under The Hood ==存储属性的本质是一个存储变量+两个访问器方法(get,set)====计...

  • swift学习-属性

    属性可以分为实例属性和类型属性 实例属性:只能通过实例去访问 存储属性:存储在实例的内存中,每个实例都有一份 计算...

  • Swift学习笔记六之属性

    1、只能在类和结构体中存储常量和变量struct Location{ //描述位置的结构体var x:Do...

  • Swift之属性

    属性 属性将与指定类,结构体,枚举相关联。 存储属性: 将常量和变量存储为实例的一部分。有类,结构体提供。计算属性...

  • Swift之属性

    存储属性 存储常量或者变量的 要么给它默认值,要么在构造方法里初始化 计算属性 计算属性不直接存储值 访问时候调用...

  • Swift笔记(一)属性、析构、调用OC单例

    目录 swift属性存储属性懒加载属性计算属性属性监听类型属性 swift析构函数 swift调用OC单例类方法 ...

网友评论

    本文标题:Swift之学习属性

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