Why isn't subclass constructor overriding?
<p>I have the code:</p>

<pre><code>class Oak extends Tree {
    public Oak() {
        System.out.println("Oak()");
    }
}
class Tree {
    public Tree() {
        System.out.println("Tree()");
    }
}

class mainClass {
    public static void main(String[] args) {
        Oak a = new Oak();
    }
}
</code></pre>

<p>Why does it print</p>

<pre><code>Tree() 
Oak()
</code></pre>

<p>instead of just</p>

<pre><code>Oak()
</code></pre>

<p>?</p>
