3

setValue:forKeyPath:Apple のNSKeyValueCodingProtocolドキュメントでのメソッドの説明は、次のように始まります。

このメソッドのデフォルトの実装 [...]

さて、これは私がセマンティクスに引っかかっているだけかもしれませんが、

  1. Objective-C プロトコルはどのようにしてデフォルトの実装を持つことができますか?
  2. NSObjectはこのプロトコルに準拠していないように見えるため、独自の NSObject サブクラスでこのデフォルトの実装をどのように利用できるのでしょうか?
4

1 に答える 1

5

NSKeyValueCoding は非公式の protocol です。つまり、カテゴリ (この場合は on NSObject) として実装されます。このNSObjectクラスは、カテゴリで宣言されたメソッドのデフォルトの実装を提供します。

于 2013-10-04T19:36:28.423 に答える