5
从常规方法调用协议默认实现
我想知道是否有可能实现这样的目标。 我有一个这样的游乐场: protocol Foo { func testPrint() } extension Foo { func testPrint() { print("Protocol extension call") } } struct Bar: Foo { func testPrint() { // Calling self or super go call default implementation self.testPrint() print("Call from struct") } } let sth = Bar() sth.testPrint() 我可以在中提供默认实现,extension但是如果Bar需要默认实现中的所有内容以及其他内容,该怎么办? 它在某种程度上类似于es中的调用super.方法,class可以满足实现每个属性等的要求structs。