title: NSString (pointer/non pointer) assign or retain
body: <p>I have four variations of the same class.</p>
  
  <p>A mix of pointer, non-pointer, assign vs copy.</p>
  
  <p>What are the implications of using each case?</p>
  
  <p>1)</p>
  
  <pre>
  @interface fruit:NSObject{
  NSString apple;
  }
  @property(nonatomic, retain);
  @end
  </pre>
  
  <p>2)</p>
  
  <pre>
  @interface fruit:NSObject{
  NSString apple;
  }
  @property(nonatomic, assign);
  @end
  </pre>
  
  <p>3)</p>
  
  <pre>
  @interface fruit:NSObject{
  NSString *apple;
  }
  @property(nonatomic, retain);
  @end
  </pre>
  
  <p>4)</p>
  
  <pre>
  @interface fruit:NSObject{
  NSString *apple;
  }
  @property(nonatomic, assign);
  @end
  </pre>