Sponsoring getting 5015163 "(str) String merge/join that is the inverse of String.split()" into JDK 7

Neal Gafter neal at gafter.com
Tue Oct 27 16:36:51 UTC 2009


Ulf-

Very good.  How what happens if you change the return type, or add a throws
clause, or change its access modifier (JLS 8.4.8.3)?  In all three cases it
must be a compile-time error.

-Neal

On Tue, Oct 27, 2009 at 8:13 AM, Ulf Zibis <Ulf.Zibis at gmx.de> wrote:

> It works fine too.
> Is coded:
>
>
> public class MyClass1 {
>   private final int value;
>
>   public MyClass1(int value) {
>       this.value = value;
>   }
>
>   public static int hashCode(Object key) {
>       return 3;
>   }
>
> //    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
>
>
> Am 27.10.2009 15:53, Neal Gafter schrieb:
>
>> 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.Zibis at gmx.de <mailto:
>> Ulf.Zibis at 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
>>
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/core-libs-dev/attachments/20091027/1d2e2d80/attachment.html>


More information about the core-libs-dev mailing list