title: Java name clash error, a method has the same erasure as another method
body: <p>I have two classes as follows</p>
  
  <p>class QueryResult:</p>
  
  <pre><code>public class QueryResult
  {
  ...
  public static List sortResults(boolean ascending, List&lt;QueryResult&gt; toSort)
      {   ...
      }
  }
  </code></pre>
  
  <p>and class CaseResult:</p>
  
  <pre><code>public class CaseResult extends QueryResult
  {
  ...
  public static List sortResults(boolean ascending, List&lt;CaseResult&gt; toSort)
      {   ...
      }
  }
  </code></pre>
  
  <p>I am getting the following error:</p>
  
  <blockquote>
    <p>Name clash: The method sortResults(boolean, List) of type
    CaseResult has the same erasure as sortResults(boolean,
    List) of type QueryResult but does not hide
    it    CaseResult.java</p>
  </blockquote>
  
  <p>I tried answers under the similar question <a href="https://stackoverflow.com/questions/11933931/java-generics-name-clash-has-the-same-erasure">Java generics name clash , has the same erasure</a> but got more errors. I think I may misunderstand something or those answers do not fit my case.</p>
  
  <p>Could someone please provide any solutions or explain more to help me understand? Thank you all.</p>