我已经阅读了这个(Difference between computed property and property set with closure)有用的问题,但它并没有完全回答我想知道的事情。
它回答了:
之间的区别//closure
var pushBehavior: UIPushBehavior = {
let lazilyCreatedPush = UIPushBehavior()
lazilyCreatedPush.setAngle(50, magnitude: 50)
return lazilyCreatedPush
}()
和
//computed
var pushBehavior: UIPushBehavior {
get{
let lazilyCreatedPush = UIPushBehavior()
lazilyCreatedPush.setAngle(50, magnitude: 50)
return lazilyCreatedPush
}
}
我理解这一点。现在,如果我们改变第一个例子,那么第二个例子中的计算变量与此之间的区别是什么:
var pushBehavior: UIPushBehavior {
let lazilyCreatedPush = UIPushBehavior()
lazilyCreatedPush.setAngle(50, magnitude: 50)
return lazilyCreatedPush
}
对我而言,这与get {}完全相同,但没有get关键字。是这样的,如果是这样,为什么我们有get关键字?