How is null implemented in Java?
<p>I know that null is not a data type.</p>

<p>But <code>null</code> can be only assigned for any type of <code>Object</code> and <code>String</code>.</p>

<p>Example:</p>

<pre><code>Object o = null; // it tells that null is an object
String b = null; // it tells that null is of string type
</code></pre>

<p>Here <code>null</code> can be assigned to both an <code>Object</code> and a <code>String</code>, but if I want to put assign any object into String we have to use type cast. but for null there is no type case.
something like the following</p>

<pre><code>String b =(String) o;
</code></pre>

<p>Thats why I have doubt that which type of data type is null. How null can be assigned to any object or any String. How is <code>null</code> implemented in Java?</p>
