title: Why does [NSObject respondsToSelector:@selector(init)] return 1?
body: <p>Why does running respondsToSelector on NSObject with the selector "init" return 1 even though running [NSObject init] gives a runtime error? I know that init is an instance method and therefore only runs on instances and not classes. Why does this return an runtime error?</p>
  
  <pre><code>if([NSObject respondsToSelector: @selector(init)] == YES )
       [NSObject performSelector: @selector(init)];
  </code></pre>
  
  <p>Furthermore, since respondsToSelector is an instance method, why is it even possible to call it in the first place?</p>