1

当您创建抽象类时来自java背景,并且有人使用它们并用它们的值覆盖它们:在目标c中......您如何在静态库中创建一个抽象类以供某人打开和覆盖?谢谢

编辑:更具体地说,他们如何在他们的方法中实现该方法并覆盖这些值以供自己使用?再次抱歉,如果这很容易,我来自 java 背景

4

3 回答 3

1

与其他一些语言不同,Objective-C 没有将类标记为抽象的语法,也不会阻止您创建抽象类的实例。

只需在文档中说它打算被子类化而不是这样使用。

于 2013-02-28T15:27:10.073 回答
1

Cocoa 不提供任何称为抽象的东西。我们可以创建一个类抽象,它只在运行时检查,编译时不检查。

这里只是一个尝试:

@interface AbstractClass : NSObject
@end

@implementation AbstractClass
+ (id)alloc{
    if (self == [AbstractClass class]) {
        NSLog(@"Abstract Class cant be used");
    }
    return [super alloc];
@end

注意:这不是编译器检查的。

于 2013-02-28T15:27:30.573 回答
1

我自己来自 Java 背景,当我第一次开始使用 Objective-C 时,我也在寻找同样的东西。我发现这回答了我的问题:

在 Objective-C 中创建一个抽象类

简短的回答,Objective-C 中没有抽象类(至少在 Java 上下文中)。

于 2013-02-28T15:30:17.497 回答