title: Static vs. non-static method
body: <p>Suppose you have some method that could be made static, inside a non-static class.
  <br/>For example:</p>
  
  <pre><code>private double power(double a, double b)
      {
          return (Math.Pow(a, b));
      }
  </code></pre>
  
  <p>Do you see any benefit from changing the method signature into static? In the example above:</p>
  
  <pre><code>private static double power(double a, double b)
      {
          return (Math.Pow(a, b));
      }
  </code></pre>
  
  <p>Even if there is some performance or memory gain, wouldn't the compiler do it as a simple optimization in compile time?
  <hr/>
  <b>Edit:</b> What I am looking for are the benefits by declaring the method as static. I <i>know</i> that this is the common practice. I would like to understand the logic behind it.<br/>
  And of course, this method is just an example to clarify my intention.</p>