我有一个名为Attendee
的类,该类继承自PFObject
。以下是其基本定义。
class Attendee: PFObject, PFSubclassing {
override class func initialize() {
var onceToken : dispatch_once_t = 0;
dispatch_once(&onceToken) {
self.registerSubclass()
}
}
class func parseClassName() -> String! {
return "Attendee"
}
}
我想创建一个名为Speaker
的对象的子类,以便Speaker
继承自Attendee
,而后者又继承自PFObject
。
我的问题是,我是否必须为initialize()
实现相同的parseClassName()
和Speaker
函数?
要解析,与会者和议长是两个没有继承的类。也许您应该做类似的事情:
您应该为每个类实现initialize()
和parseClassName()
。
您的代码类应该在服务器上复制这些类,以避免您和Parse SDK代码混淆。您希望在这些类之间共享的任何功能都应该移到另一个可以根据需要实例化/运行的类中。
它合理工作的唯一方法是,如果您的子类仅包含方法,而没有数据。但是即使那样,Parse要么不会向您返回正确的类,要么会在与您期望的时间不同的时间返回它。
您绝对可以在客户端执行此操作。如果要分别存储它们,只需在每个对象的parseClassName()
中返回不同的值。