Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/110.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c @接口多重继承?_Objective C_Ios_Inheritance_Interface - Fatal编程技术网

Objective c @接口多重继承?

Objective c @接口多重继承?,objective-c,ios,inheritance,interface,Objective C,Ios,Inheritance,Interface,我在我的应用程序中使用Objective-C,我对@interface声明中的多重继承有疑问 基本上这就是我的.h现在的样子: #import "cocos2d.h" @interface UIViewController (Save) - (void)saveImage:(UIImage*)image:(NSString*)imageName; - (void)removeImage:(NSString*)fileName; - (UIImage*)load

我在我的应用程序中使用Objective-C,我对@interface声明中的多重继承有疑问

基本上这就是我的.h现在的样子:

#import "cocos2d.h"

    @interface UIViewController (Save)

    - (void)saveImage:(UIImage*)image:(NSString*)imageName;
    - (void)removeImage:(NSString*)fileName;
    - (UIImage*)loadImage:(NSString*)imageName;

    @end

    @interface CCLayer (Save)
    - (UIImage*)loadImage:(NSString*)imageName;
    - (BOOL)checkExists:(NSString*)thePath;
    @end
如您所见,我已经声明了loadImage方法两次。我不想这样做。这也意味着对于该方法,我必须在我的.m中有两次相同的代码

有没有办法将UIViewController和CCLayer混合到1@接口中,这样我就不必多次声明它

谢谢

ObjC没有多重继承。 您不希望在同一类中对同一SEL进行多个定义。 您可以声明并通过一个协议。然后在声明采用的@interface中定义loadImage:方法。您还可以在虚拟类别中声明它,然后在另一个@implementation作用域中定义loadImage:。 另一种方法是组合——基本上,您可以向类中添加一个类或协议实例变量,并让它执行工作。如果这是公共接口,那么您还可以为它提供访问器,或者根据需要包装它。如果每个@interface的50个方法可以在逻辑上细分,那么这是值得考虑的。 ObjC没有多重继承。 您不希望在同一类中对同一SEL进行多个定义。 您可以声明并通过一个协议。然后在声明采用的@interface中定义loadImage:方法。您还可以在虚拟类别中声明它,然后在另一个@implementation作用域中定义loadImage:。 另一种方法是组合——基本上,您可以向类中添加一个类或协议实例变量,并让它执行工作。如果这是公共接口,那么您还可以为它提供访问器,或者根据需要包装它。如果每个@interface的50个方法可以在逻辑上细分,那么这是值得考虑的。
目标CSo中没有多重继承,绝对没有解决方法?如果我有50种相同的方法呢?这是非常乏味和无组织的。在目标CSo中没有多重继承,绝对没有解决方法?如果我有50种相同的方法呢?这是非常乏味和无组织的。