title: When are Java Strings interned?
body: <p>Inspired by the comments on <a href="https://stackoverflow.com/questions/3450604/why-is-there-no-string-empty-in-java">this question</a>, I'm pretty sure that Java <code>String</code>s are interned at runtime rather than compile time - surely just the fact that classes can be compiled at different times, but would still point to the same reference at runtime.</p>
  
  <p>I can't seem to find any evidence to back this up. Can anyone justify this?</p>