【发布时间】:2016-05-02 17:15:51
【问题描述】:
在 Objective-C 中我可以这样做:
@interface MyManagedObjectSuperClass : NSManagedObject
+(NSString*)entityName;
@end
@implementation
+(NSString*)entityName
{
return NSStringFromClass([self class])
}
@end
有了这个基类,我所有的其他NSManagedObjects 都可以继承自MyManagedObjectSuperClass。我可以通过调用+entityName获取实体名称,因为有polymorphism,在子类中,NSStringFromClass([self class])返回子类的类名。
所以我的问题是,我可以在 Swift 中做到这一点吗?
【问题讨论】:
-
@bjtitus 它不是重复的,我需要从类型而不是实例中获取它,并且我需要多态性
-
NSStringFromClass()也适用于 Swift。有关示例,请参见 stackoverflow.com/a/27112385/1187415。