• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: super respondsToSelector
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: super respondsToSelector


  • Subject: Re: super respondsToSelector
  • From: Jens Alfke <email@hidden>
  • Date: Fri, 30 May 2008 23:43:52 -0700


On 30 May '08, at 11:22 PM, Russ McBride wrote:

Anyone want to take a stab at explaining to me as thoroughly as possible why
[super respondsToSelector: aSelector]
doesn't actually do what it looks like it should do?

Sure. "super" does not mean "my superclass". It means "self, but start looking for method implementations in my superclass".


The purpose of "super" is to give you a way to call the inherited version of a method you've overridden, since there would otherwise be no way of doing so. The actual receiver of the method that's called via "super" is self, since "super" only changes the way in which methods are looked up.

Since your class didn't override -respondsToSelector:, the implementation you get when you user "super" is the same as the normal one you'd get if you called it on self, i.e. the implementation in NSObject. And since the receiver is self, not some hypothetical instance of your superclass, you get the same result as if you'd called [self respondsToSelector:].

If you actually want to ask a question of your class's superclass, you have to do so directly:
[[[self class] superclass] instancesRespondToSelector: aSelector]


—Jens

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Follow-Ups:
    • Re: super respondsToSelector
      • From: Bill Bumgarner <email@hidden>
References: 
 >super respondsToSelector (From: Russ McBride <email@hidden>)

  • Prev by Date: How can i get current system time?
  • Next by Date: Re: super respondsToSelector
  • Previous by thread: Re: super respondsToSelector
  • Next by thread: Re: super respondsToSelector
  • Index(es):
    • Date
    • Thread