A few comments on episode 451 about "Effective Java 8"

The release notes for JDK 8 GA may be of interest


http://www.oracle.com/technetwork/java/javase/8train-relnotes-previous-2179307.html

especially the compatibility guide


http://www.oracle.com/technetwork/java/javase/8-compatibility-guide-2156366.html

The JDK uses a nuanced evolution policy with regard to compatibility,
separately considering source, binary, and behavioral changes:


http://cr.openjdk.java.net/~darcy/OpenJdkDevGuide/OpenJdkDevelopersGuide.v0.777.html#general_evolution_policy

For example, the reason old deprecated methods haven't been deleted is
because that would be a binary incompatible change, that is, classes that
just referenced the removed method would be able to link, even if they
would even actually call the deprecated method at runtime. To date, such as
change has been regarded as too disruptive. However, one of the
long-deprecated Thread.stop methods has been disabled in JDK 8; from the
compatibility guide:

    Synopsis: Thread.stop(Throwable) has been disabled
    Description: The Thread.stop method has been deprecated since release
1.2. This method now
    throws an UnsupportedOperationException.

This change is binary compatible (classes using it would still link), but a
behavioral change at runtime.

Another change in JDK 8, the apt tool and its associated API have been
removed from the platform. Annotation processing should now be done with
javax.annotation.processing and javac, which has been supported since JDK 6.

-Joe

-- 
You received this message because you are subscribed to the Google Groups "Java 
Posse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to javaposse+unsubscr...@googlegroups.com.
To post to this group, send email to javaposse@googlegroups.com.
Visit this group at http://groups.google.com/group/javaposse.
For more options, visit https://groups.google.com/d/optout.

Reply via email to