title: How is this user defined data type type-casted?
body: <pre><code>Button buttonClick = (Button) findViewById(R.id.button)
  </code></pre>
  
  <p>Applying Java grammar, the above statement means the value returned by method
  <strong>findViewById()</strong> is <em>changed</em> to the data type <strong>Button</strong>, and stored in variable <strong>buttonClick</strong>.</p>
  
  <p>I've studied Java(apparently not enough!), and have never come across type casting a user-defined data type. 
  How does this work?</p>