Objective-C — the language that powers iOS and macOS development. Whether you’re a fresh-faced enthusiast or an aspiring developer, unlocking the secrets of Objective-C opens doors to creating powerful and intuitive applications. top interview questions and answers to ace your next tech interview.
Q1. What is Objective-C?
Ans: Objective-C is a general-purpose, object-oriented programming language that adds Smalltalk-style messaging to the C programming language. It is primarily used for macOS and iOS development.
Q2. What are the main features of Objective-C?
Ans:
Dynamic typing
Dynamic binding
Dynamic loading
Message passing
Categories and protocols
Automatic Reference Counting (ARC)
Q3. Explain the difference between #import and #include.
Ans: #import ensures that a file is included only once per compilation, preventing circular dependencies. #include allows a file to be included multiple times, which can lead to redundancy.
Q4. What are categories in Objective-C?
Ans: Categories allow you to add methods to existing classes without subclassing. This can be used to extend functionality or organize code better.
Q5. What are protocols in Objective-C?
Ans: Protocols define a list of methods that a class can implement. They are similar to interfaces in other languages and can be either optional or required.
Q6. How do you declare and use a property in Objective-C?
Ans: Properties are declared in the interface section using the @property keyword. For example:
objective
@interface MyClass : NSObject
@property (nonatomic, strong) NSString *name;
The @synthesize directive is used in the implementation to generate getter and setter methods.
Q7. What is the purpose of @synthesize and @dynamic in Objective-C?
Ans:
@synthesize: Automatically generates getter and setter methods for a property.
@dynamic: Informs the compiler that getter and setter methods are implemented elsewhere.
Top comments (0)