私は正解と明確な答えを見つけるのに苦労していたので、ここでそれを尋ねることにしました。
クラスAを作成し、そこでinitメソッドを定義します。
@interface A : NSObject
- (id)initWithHealth:(int)hp;
@end
次に、クラスAから継承し、そこで別のinitメソッドを定義するクラスBを作成しています。
@interface B : A
- (id)initWithHealth:(int)hp andDamage:(int)dmg;
@end
主に、クラスBからオブジェクトをインスタンス化する場合、Xcodeによって次のいずれかを使用するように提案されます-(id)initWithHealth:(int)hp; または-(id)initWithHealth:(int)hp andDamage:(int)dmg; initメソッド。クラスBがクラスAからinitメソッドを継承することを禁止するにはどうすればよいですか?クラスBに定義するinitメソッドを1つだけ持たせたい。これを達成する方法はありますか?
前もって感謝します。
編集済み(Sulthanとrmaddyに感謝)
OK私は私の質問に対する答えを見つけました、私はカテゴリーを使うべきでした。しかし、参加してくれたすべての人に感謝します。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加