//计算属性
class MyClass0{
//存储属性 不能用class修饰存储属性,编译报错
static var bar = "";
var temp = "";
//计算属性
var hehe:String {
get{
return temp+"lalala";
}
set{
temp = newValue;
}
}
}
let obj = MyClass0();
obj.hehe = "woshihaoren";
print(obj.hehe);
//计算属性(类的计算属性)
class MyClass1{
static var bar = "";
var temp = "";
//class可以修饰计算属性
class var hehe:String {
get{
return bar+"lalala";
}
set{
bar = newValue;
}
}
}
MyClass1.hehe = "nishihaoren";
print(MyClass1.hehe);
//存储属性
class MyClass2{
var temp = "你是谁" {
willSet{
//这里可以取到新值
print("将要给属性赋值啦! \(newValue)")
}
didSet{
//这里可以取到旧值
print("已经给属性赋值啦! \(temp) === \(oldValue)")
}
}
}
let obj2 = MyClass2();
obj2.temp = "heheda";
print(obj2.temp);
网友评论