0

最初に、インスタンス化できない基本クラスとしてプロトコルを設計しました。後で、このプロトコルに準拠したクラス間でいくつかの共有メソッドが必要であることがわかったので、プロトコルにデフォルトの実装を追加したいと思います。
私の知る限り、Obj-C はデフォルトの動作を備えたプロトコルをサポートしていないため、インターフェイスにする必要があります。次に、私の質問を思いつきました。インターフェースをインスタンス化できないようにする方法は?

ありがとう。

4

1 に答える 1

1

インターフェイスをインスタンス化することはできません。Objective-C では実際には利用できない抽象クラスについて考えているかもしれません。おそらく、プログラムの構造を再考して、より多くの継承を使用するようにしてください。継承元のクラスが特定のプロトコル (Objective-C の Java インターフェイスに相当するもの) に準拠している場合は、それをインスタンス化するか、サブクラス化してからインスタンス化することができます。

継承の詳細については、こちらをご覧ください: http://www.techotopia.com/index.php/Objective-C_Inheritance

于 2012-05-07T08:56:48.170 に答える