title: Is there a semantic difference between toExternalForm and toString on java.net.URL?
body: <p>The implementation of one simply delegates to the other, which suggests to me that there is a semantic difference between the two from an interface standpoint -- or at least, someone thought so at some point. Can anyone shed some light there?</p>
  
  <p>Edit: I already know the implementation of <code>toString</code> delegates to <code>toExternalForm</code>. It's the first thing I said. :) I'm asking <strong>why</strong> this duplication exists - that's what I meant by "semantic" difference.</p>