title: What is the difference between String.subString() and String.subSequence()
body: <p><code>String.subSequence()</code> has the following javadoc:</p>
  
  <blockquote>
    <p>Returns a new character sequence that is a subsequence of this
    sequence.  </p>
    
    <p>An invocation of this method of the form </p>
  
  <pre><code>str.subSequence(begin, end)
  </code></pre>
    
    <p>behaves in exactly the same way as the invocation   </p>
  
  <pre><code>str.substring(begin, end) 
  </code></pre>
    
    <p>This method is defined so that the String class can implement the
    CharSequence interface.</p>
  </blockquote>
  
  <p>Can anyone explain?</p>