title: Provide access to the private method that are defined in base class
body: <p>I have found this <a href="https://stackoverflow.com/questions/13596909/in-objective-c-how-do-i-make-a-method-thats-accessible-by-all-child-class-but">explanation</a>, but I think I am a little confused. </p>
  
  <p>So as I understood if I use category in my BaseDataHandler.m:</p>
  
  <pre><code>@interface STDataHandler (STDataHandlerPrivateMethods)
  
  - (void)syncDataWithServer:(NSDictionary *)params;
  
  @end
  </code></pre>
  
  <p>the method syncDataWithServer will not be found in the child for example <code>DataHandlerPlayer.m</code>.</p>
  
  <p>So my question is how I can provide this method for the child but hide for other classes. If I put this method to <code>@interface</code> in <code>BaseDataHandler.h</code> it will be a public one.</p>