Domanda

The method discussion for setValue:forKeyPath: in Apple's NSKeyValueCoding Protocol documentation starts with:

The default implementation of this method [...]

Now, this might just be me getting caught with semantics but:

  1. How can an Objective-C Protocol have a default implementation?
  2. Since NSObject doesn't appear to conform to this protocol, how would one be able to take advantage of this default implementation in their own NSObject subclasses?
È stato utile?

Soluzione

NSKeyValueCoding is an informal protocol, which means it's implemented as a category (in this case, on NSObject). The NSObject class provides the default implementation of the methods declared in the category.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top