type casting of byte and int
<p>I'd a code snippet:</p>

<pre><code>class AutoTypeCast{
    public static void main(String...args){
        int x=10;
        byte b=20;//no compilation error
        byte c=x;//compilation error
    }
}
</code></pre>

<p>Why <code>20</code> is automatically type-casted to <code>byte</code> while <code>x</code> not?</p>
