title: difference between spy and direct object
body: <p>As far as i have gathered knowledge on Mockito, when we spy an object and call any method on it then its real implementation is executed. </p>
  
  <pre><code>class Abc {
      public int fun() {
           //to do stuff
           return 5;
      }
  }
  </code></pre>
  
  <p>Test Using spy:</p>
  
  <pre><code>Class AbcTest {
      public void testFun()
      {
          Abc ob= spy(Abc.class);
          ob.fun();   //calls real implementation
          //Other stuff
      }
  }
  </code></pre>
  
  <p>Test Without spy:</p>
  
  <pre><code>Class AbcTest
  {
      public void testFun() {
           Abc ob=new Abc();
           ob.fun();
           //other stuff
      }
  }  
  </code></pre>
  
  <p>What is the difference b/w calling the real implementation of a method using above two methods??</p>