Welcome to Scribd. Sign in or start your free trial to enjoy unlimited e-books, audiobooks & documents.Find out more
Standard view
Full view
of .
Look up keyword or section
Like this

Table Of Contents

Who Should Read This Document
Organization of This Document
See Also
Memory Management
Object Basics
Dynamic Typing
Object Messaging
Message Syntax
Sending Messages to nil
The Receiver’s Instance Variables
Dynamic Binding
Dynamic Method Resolution
Dot Syntax
Listing 1-1 Accessing properties using the dot syntax
Listing 1-2 Accessing properties using bracket syntax
Figure 1-2 Rectangle Instance Variables
Class Types
Class Objects
Figure 1-3 Inheritance hierarchy for NSCell
Listing 1-3 Implementation of the initialize method
Class Names in Source Code
Testing Class Equality
Source Files
Class Interface
Defining a Class
Importing the Interface
Referring to Other Classes
The Role of the Interface
Class Implementation
Referring to Instance Variables
The Scope of Instance Variables
Figure 2-1 The scope of instance variables
An Example
Using super
Redefining self
Allocating and Initializing Objects
The Returned Object
Implementing an Initializer
Constraints and Conventions
Handling Initialization Failure
Coordinating Classes
Figure 3-1 Incorporating an Inherited Initialization Method
Figure 3-2 Covering an Inherited Initialization Model
The Designated Initializer
Figure 3-3 Covering the Designated Initializer
Combining Allocation and Initialization
Declaring Interfaces for Others to Implement
Methods for Others to Implement
Declaring Interfaces for Anonymous Objects
Non-Hierarchical Similarities
Formal Protocols
Declaring a Protocol
Optional Protocol Methods
Informal Protocols
Protocol Objects
Adopting a Protocol
Conforming to a Protocol
Type Checking
Protocols Within Protocols
Referring to Other Protocols
Property Declaration and Implementation
Property Declaration
Declared Properties
Listing 5-1 Declaring a simple property
Property Declaration Attributes
Property Implementation Directives
Listing 5-3 Using @dynamic with NSManagedObject
Using Properties
Supported Types
Property Re-declaration
Core Foundation
Listing 5-4 Declaring properties for a class
Subclassing with Properties
Performance and Threading
Runtime Difference
Associative References
Retrieving Associated Objects
Breaking Associations
Complete Example
The for…in Feature
Adopting Fast Enumeration
Fast Enumeration
Using Fast Enumeration
Default Dynamic Behavior
Static Typing
Enabling Static Behavior
Return and Argument Types
Static Typing to an Inherited Class
SEL and @selector
Methods and Selectors
Method Return and Argument Types
Varying the Message at Runtime
The Target-Action Design Pattern
Avoiding Messaging Errors
Enabling Exception-Handling
Exception Handling
Catching Different Types of Exception
Throwing Exceptions
Synchronizing Thread Execution
Listing 12-1 Locking a method using self
Listing 12-2 Locking a method using a custom semaphore
Distributed Objects
Remote Messaging
Language Support
Synchronous and Asynchronous Messages
Pointer Arguments
Proxies and Copies
Mixing Objective-C and C++ Language Features
Listing 14-1 Using C++ and Objective-C instances as instance variables
Using C++ With Objective-C
C++ Lexical Ambiguities and Conflicts
Defined Types
Language Summary
Preprocessor Directives
Compiler Directives
Method Declarations
Method Implementations
Deprecation Syntax
Naming Conventions
Document Revision History
0 of .
Results for:
No results containing your search query
P. 1


Ratings: (0)|Views: 35|Likes:
Published by Pragash Rosario T

More info:

Published by: Pragash Rosario T on Apr 12, 2011
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less





You're Reading a Free Preview
Pages 4 to 41 are not shown in this preview.
You're Reading a Free Preview
Pages 45 to 78 are not shown in this preview.
You're Reading a Free Preview
Pages 84 to 137 are not shown in this preview.

Activity (2)

You've already reviewed this. Edit your review.
1 thousand reads
1 hundred reads

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->