方法sampleMethod()
是从具有弱引用self(self?.sampleMethod()
)的闭包中调用的,在同一个类中。现在sampleMethod()
中使用的自我背景是什么?
它会是一个弱者还是一个强者?
答案 0 :(得分:1)
由于方法sampleMethod()
成功调用,默认情况下它会在其内部使用强大的self
引用。
您可以考虑这一行
self?.sampleMethod()
像这样
if let s = self {
s.dynamicType.sampleMethod(s)()
}
您只需将对实例的强引用传递给相关的类方法