• 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: Class vs +class: Cocoa/Obj-C design question
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Class vs +class: Cocoa/Obj-C design question


  • Subject: Re: Class vs +class: Cocoa/Obj-C design question
  • From: Bill Bumgarner <email@hidden>
  • Date: Sat, 13 Oct 2007 14:56:13 -0500

On Oct 13, 2007, at 12:17 PM, Chris Ryland wrote:
Can I ask perhaps a "list in the mists of time" language/library question? (Or perhaps a dumb question--forgive me if so.)

Why can't a class name (e.g., NSObject) stand for itself in general-- i.e., why isn't NSObject == [NSObject class] the way +class is defined now?

In theory, NSObject is a class object, and [NSObject class] should be its metaclass.

Why this breakdown in what otherwise is a very clean language/ library design?

Classes can be every bit as dynamic as instances.

Through posing or any of a number of other mechanisms, the 'isa' pointer of a class -- the thing returned by [NSObject class] -- can easily change at runtime.

Thus, you should always use [ClassName class] or NSClassFromString(@"ClassName") to grab a reference to the class as doing so will always return the correct result regardless of what might have been dynamically loaded or modified since the original link.

b.bum
_______________________________________________

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: Class vs +class: Cocoa/Obj-C design question
      • From: Chris Ryland <email@hidden>
References: 
 >Class vs +class: Cocoa/Obj-C design question (From: Chris Ryland <email@hidden>)

  • Prev by Date: Re: NSOpenPanel not showing all Folders in the Left Pane
  • Next by Date: [Q] Input Method broken?
  • Previous by thread: Class vs +class: Cocoa/Obj-C design question
  • Next by thread: Re: Class vs +class: Cocoa/Obj-C design question
  • Index(es):
    • Date
    • Thread