Custom Object empty after creation <p>I have a custom object: <code>Vendor</code> that extends <code>NSObject</code>. I am initiating it like so:</p> <pre><code>NSDictionary *vendorObj = [vendors objectAtIndex:i]; Vendor *vendor = [[Vendor alloc] initWithVendorInfo:vendorObj]; NSLog(@"VendorObj: %@", vendorObj); NSLog(@"Vendor: %@", vendor); </code></pre> <p>Here is what the class looks like:</p> <pre><code>@interface Vendor : NSObject @property (nonatomic, copy) NSString *name; @property (nonatomic, copy) NSString *description; - (id)initWithVendorInfo:(NSDictionary *)vendorDetails; @end @implementation Vendor - (id)initWithVendorInfo:(NSDictionary *)vendorDetails { self = [super init]; if(self) { _name = [vendorDetails[@"company_name"] copy]; _description = [vendorDetails[@"description"] copy]; } return self; } </code></pre> <p>If I NSLog <code>vendorObj</code> all the details are there. Once I initiate the <code>Vendor</code> object and NSLog it, the log shows:</p> <pre><code>2013-11-21 22:22:44.769 [48202:a07] Vendor: </code></pre> <p>I cannot seem to figure out why my object is nothing, no memory address, not even a null. What am I doing wrong here?</p>