<Swing Dev> Add Look&Feel support for AIX platform
Tom Hawtin
tom.hawtin at oracle.com
Tue Oct 18 11:27:22 UTC 2011
On 18/10/2011 11:15, Steve Poole wrote:
> On Tue, 2011-10-18 at 15:53 +0800, Sean Chou wrote:
>
> Hi Sean, I wonder if the inclusion of AIX in the enum is at the wrong
> point? You've added it before UNKNOWN which makes logical sense - but
> you have changed UNKNOWN's ordinal value so if the enum is
> serialised/deserialised then you could in theory break something
> relying on UNKNOWN being the 4th entry
>
> Its a small point and unlikely to happen I expect but I thought I'd
> point it out.
It does change the ordinal but it's not a technically binary
compatibility change as defined by the JLS (3rd Ed. 13.4.26). The
behavioural change by insertion is less significant as the results from
compareTo select the same sort order.
http://java.sun.com/docs/books/jls/third_edition/html/binaryComp.html#13.4.26
"13.4.26 Evolution of Enums
"Adding or reordering constants from an enum type will not break
compatibility with pre-existing binaries.
If a precompiled binary attempts to access an enum constant that no
longer exists, the client will fail at runtime with a NoSuchFieldError.
Therefore such a change is not recommended for widely distributed enums.
"In all other respects, the binary compatibility rules for enums are
identical to those for classes."
Java Serialisation serialises enums by name rather than just ordinal.
Tom
More information about the swing-dev
mailing list