What is the difference between class object and metaclass in Objective-C?

Updated May 17, 2026

Short answer

Class objects define instance behavior, while metaclasses define class-level behavior.

Deep explanation

Every Objective-C class is itself an object. Instance methods live in class objects, while class methods live in metaclasses. The metaclass is a class of the class object. This 3-level hierarchy enables Objective-C's dynamic messaging system.

Unlock with a Pro subscription to view this section.

View pricing

Real-world example

No real-world example available yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

Common mistakes

No common mistakes listed yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

Follow-up questions

No follow-up questions available yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

More Objective-C interview questions

View all →