Swift SKPhysicsBody空子类不继承父init

时间:2019-11-13 19:41:25

标签: swift sprite-kit

在尝试从SkPhysicsBody继承时,我发现了一些很奇怪的东西: 便利的初始化都不是继承的!

这是您可以在操场上测试的代码:

import PlaygroundSupport
import SpriteKit
import GameplayKit

public class SKPhysicsBodySubClass:SKPhysicsBody
{

}

let pb = SKPhysicsBody(circleOfRadius: 10)
let pbsc = SKPhysicsBodySubClass(circleOfRadius: 10)

最后一条指令产生一条错误,提示父init不存在:“调用中的参数标签不正确(具有'circleOfRadius:',预期为'coder:')”

我也知道继承规则:

  

规则1:   如果您的子类没有定义任何指定的初始值设定项,它将自动继承其所有超类指定的初始值设定项。

     

规则2:   如果您的子类提供了其所有超类指定初始化器的实现(通过按照规则1继承它们,或通过提供自定义实现作为其定义的一部分),那么它将自动继承所有超类便利性初始化器。

知道这里发生了什么吗?我想念什么?

0 个答案:

没有答案