有关创建空模板类的问题仅用于子类

时间:2016-10-04 16:26:40

标签: objective-c oop inheritance

我正在尝试在我的objective-c项目中创建一个插件系统,这样我就可以创建一个遵循特定约定的类,它可以直接使用。

这些类包含公共标题(包括协议和类别),还需要遵循所包含的协议。但除此之外,每个班级都非常独特,并且不会共享任何代码。

每次我需要编写插件时,我都不想写相同的行,所以考虑创建这样的基类:

#import <Foundation/Foundation.h>
#import "Helper.h"
#import "ComponentProtocol.h"
#import "UIView+Extension.h"

@interface Component : NSObject <ComponentProtocol>
+ (UIView *)someProtocolFunction;
@end

该课程没有实施 然后每当我需要创建其中一个类时,我就会创建一个如下所示的类:

#import "Component.h"
@interface CustomComponent : Component
@end

所以我有两个问题:

  1. 这是好事吗?基类不会在其中包含一行代码,因为我只是将它用作模板。或者,如果有更好的方法吗?
  2. 正如您在代码中看到的,协议需要一个类方法。我不知道如何在子类中进行此操作。如果它是一个实例方法,我可以调用[super someProtocolFunction];,然后添加特定于子类的逻辑,但我不知道这在类方法设置中是如何工作的。

0 个答案:

没有答案