title: What's the difference between DataOutputStream and ObjectOutputStream?
body: <p>I'm learning about socket programming in Java.  I've seen client/server app examples with some using <code>DataOutputStream</code>, and some using <code>ObjectOutputStream</code>.  </p>
  
  <p>What's the difference between the two?  </p>
  
  <p>Is there a performance difference?</p>