Why StringBuffer and StringBuilder append methods discard the value returned by the super call
<p>This is a question out of curiousity.
Today I took a look at the implementations of <code>StringBuilder</code> and <code>StringBuffer</code>. Here's the <code>append()</code> method:</p>

<pre><code>public StringBuilder append(String str) {
    super.append(str);
    return this;
}
</code></pre>

<p><code>AbstractStringBuilder.append(str)</code> also returns <code>this</code>. Are there any benefits of discarding the return value (in <code>StringBuilder.append(..)</code>) and returning <code>this</code> again, instead of casting the return value of the <code>super</code> call to the current concrete implementation.</p>
