of%20D)%20%7B%0A%20%20%20%20%2F%2F%20x%20is%20D%20here%0A%20%20%7D%0A%20%20else%20%7B%0A%20%20%20%20%2F%2F%20x%20is%20still%20just%20C%20here%0A%20%20%7D%0A%7D">Try</a></pre></p>
<p>Unlike normal narrowing, <code>instanceof</code> narrowing doesn't remove any
types to get <code>x</code>'s computed type. Instead, it and changes the computed
type to <code>D</code> inside the <code>if (x instanceof D)</code> block when <code>D</code> appears to
be a subclass of <code>C</code>. Also unlike normal narrowing, in 