Simple playground test:
class Test {
lazy var myLazyVar: Void = {
print("crazy")
}()
}
print("Initialize: ")
var test = Test()
print("call first")
test.myLazyVar
will print:
Initialize:
call first
crazy
but then you have:
class Test {
@Lazy var myLazyVar: Void = {
print("crazy")
}()
}
print("Initialize: ")
var test = Test()
print("call first")
test.myLazyVar
which will print:
Simple playground test:
will print:
but then you have:
which will print: