私はObjective Cを非常に新しくしています。私はウェブ上で検索しようとしましたが、良いコンテクストがないため、検索結果が私の要求に合わないようです。派生クラスメソッドをプロトコルメソッドに委譲するにはどうすればよいですか?
私はプロトコルP
で宣言されたfoo
メソッドを持っています。 interface
DerivedはP
から継承し、foo
の実装を提供します。私はプロトコルP
を継承する別のinterface
AnotherDerived
を持っています。 AnotherDerived
のメソッドからfoo
に呼び出しを委譲して、派生メソッドが呼び出されるようにしたいと思います。
@protocol P <NSObject>
@required
- (NSString *)foo;
@end
@interface Derived: NSObject <P>
- (NSString *)foo
{
return _foo;
}
@end
@interface AnotherDerived: NSObject <P>
- (NSString *)foo
{
return [super foo]; <----------------- I need something like this. It should call method of Derived
}
@end
これを行う方法はありますか?
質問を少し抽象化できますか?私は私とPとfooが続くのは難しいと思う。もっと具体的に説明できますか? – Fogmeister
不快感をおかけして申し訳ありません。私は詳細を追加しています。 –
[super foo]を呼び出すには、AnotherDerivedをDerivedから継承する必要があります。 –