Try adding public static hashCode(Object key) { return 3; }
to MyClass. Such a class is broken by the proposed change. On Tue, Oct 27, 2009 at 2:49 AM, Ulf Zibis <ulf.zi...@gmx.de> wrote: > Correction: > > > public class MyClass1 { > private final int value; > > public MyClass1(int value) { > this.value = value; > } > > public static int hashCode(MyClass1 obj) { > return 3 * obj.value; > } > > public static void main(String... args) { > MyClass1 c = new MyClass1(99); > System.out.println(c.hashCode()); > System.out.println(hashCode(c)); > System.out.println(Object.hashCode(c)); // compile error if using > official version of class Object > } > } > > > -Ulf > > >