Returns a Boolean value that indicates whether the receiver implements or inherits a method that can respond to a specified message.
- iOS 2.0+
- macOS 10.0+
- tvOS 9.0+
- watchOS 2.0+
- Objective-C Runtime
A selector that identifies a message.
true if the receiver implements or inherits a method that can respond to
The application is responsible for determining whether a
false response should be considered an error.
You cannot test whether an object inherits a method from its superclass by sending
responds(to:) to the object using the
super keyword. This method will still be testing the object as a whole, not just the superclass’s implementation. Therefore, sending
super is equivalent to sending it to
self. Instead, you must invoke the
NSObject class method
instances directly on the object’s superclass, as illustrated in the following code fragment.
You cannot simply use
[[self superclass] instances since this may cause the method to fail if it is invoked by a subclass.
Note that if the receiver is able to forward
a messages to another object, it will be able to respond to the message, albeit indirectly, even though this method returns