0

クラスのスーパーを(できれば alloc または init メソッドで)選択して、クラスが他のものから継承することは何とか可能ですか?

4

2 に答える 2

3

-init目的のターゲット クラスのインスタンスを作成して をリセットすることで、これを行うことができますself-releaseただし、その場合は必ず前のインスタンスにメッセージを送信してください。

于 2010-07-22T13:14:14.450 に答える
0

いいえ、できません。そして:はい、できます。

クラス (!) は相対的に静的なものです。そのスーパークラスに「ハードワイヤード」されています。割り当てられたメモリの処理方法やその他のことを知っている必要があるため、これは重要です。

異なるものはインスタンスです。クラスにインスタンスを「要求」することで、そのクラスのインスタンスを取得します。(そして、通常、1 つを取得した後、初期化などを要求します。)

この時点で、通常の動作が「壊れる」可能性があります。とはいえ、これは初心者がやってはいけないことだと思うので、経験を積むべきです!なんで?内容を読んでください、Appleはこれについて言っています。そして、アップルでさえそのようなことをしていることを見てください!NSNumber: Cocoa Fundamentals Guideなどのクラス クラスターを参照してください(これ以上投稿することはできませんが、私の助けがなければ NSNumber のドキュメントを見つけることができます)。

于 2010-07-22T23:09:30.187 に答える