Objective c 使用不同的超类,而不是NSObject

Objective c 使用不同的超类,而不是NSObject,objective-c,class,nsobject,superclass,Objective C,Class,Nsobject,Superclass,这可能是一个直截了当的答案,我知道在创建新类时,不必将NSObject设置为超类 比如说,我想创建一个类,它包含一组定制的CABasicAnimations。虽然我可以使用cabasicaniation作为超类,但建议我遵循不成文的规则,仍然使用NSObject,还是如果您正在编写这样一个类,您会使用cabasicaniation作为超类 我认为,只要类只包含与CABasicAnimation相关的属性和方法,这就无关紧要了 把你的想法放在这里会很有趣的 规则是对任何试图扩展的对象进行子类化。N

这可能是一个直截了当的答案,我知道在创建新类时,不必将NSObject设置为超类

比如说,我想创建一个类,它包含一组定制的CABasicAnimations。虽然我可以使用cabasicaniation作为超类,但建议我遵循不成文的规则,仍然使用NSObject,还是如果您正在编写这样一个类,您会使用cabasicaniation作为超类

我认为,只要类只包含与CABasicAnimation相关的属性和方法,这就无关紧要了


把你的想法放在这里会很有趣的

规则是对任何试图扩展的对象进行子类化。NSObject用于许多子类,因为它是根对象,但如果我要编写一个与NSTableView非常相似的类,那么我将为NSTableView创建子类


在你的情况下,如果你正在编写一个你想调用的自定义动画,那么你应该考虑CABasic动画中的子类。另一方面,如果动画实际上只是预先存在的CA动画的集合,那么NSObject就可以了。

规则是对试图扩展的任何对象进行子类化。NSObject用于许多子类,因为它是根对象,但如果我要编写一个与NSTableView非常相似的类,那么我将为NSTableView创建子类

在你的情况下,如果你正在编写一个你想调用的自定义动画,那么你应该考虑CABasic动画中的子类。另一方面,如果动画实际上只是预先存在的CA动画的集合,那么NSObject就可以了

持有一套定制卡巴斯卡的课程

在这种情况下,我希望使用而不是子类

持有一套定制卡巴斯卡的课程


在本例中,我想使用而不是子类

CABasicAnimation
已经(间接)继承了
NSObject
,因此如果您继承自
CABasicAnimation
,您就可以了。或者我误解了你的问题?我的问题是指其他开发人员的偏好,而不是工作内容。我想我的观点是,通过继承
cabasicanition
,你已经匹配了其他开发人员的偏好。当他们说“您应该始终子类化
NSObject
”时,他们在括号中包含“(或者为您子类化
NSObject
)。事实上,您根本不需要设置超类——通过不指定超类,您正在创建一个新的根类。但可能不是您想要的。
cabasicanition
已经(间接)继承了
NSObject
,因此如果您是从
cabasicanition
继承的,您将被覆盖。或者我误解了你的问题?我的问题是指其他开发人员的偏好,而不是工作内容。我想我的观点是,通过继承
cabasicanition
,你已经匹配了其他开发人员的偏好。当他们说“您应该始终子类化
NSObject
”时,他们在括号中包含“(或者为您子类化
NSObject
)。事实上,您根本不需要设置超类——通过不指定超类,您正在创建一个新的根类。也许不是你想要的。