<Swing Dev> RFR JDK-8250850: Address reliance on default constructors in the javax.swing.plaf.metal APIs
Prasanta Sadhukhan
prasanta.sadhukhan at oracle.com
Sat Aug 15 12:31:02 UTC 2020
Hi All,
Please review a fix for issue where it was seen that several classes
rely on default constructors as part of their public API.
It's to be noted that "A no-arg public constructor is generated by the
compiler for a class if it does not declare an explicit constructor.
While convenient, this is inappropriate for many kinds of formal
classes, both because the constructor will have no javadoc and because
the constructor may be unintended."
For the JDK, classes intended to be used outside of the JDK, public
classes in exported packages, should not rely on default constructors.
Proposed fix is to create protected constructors to the public abstract
classes for javax.swing.plaf.metal module (as one part of overalll
java.desktop change)
Bug: https://bugs.openjdk.java.net/browse/JDK-8250850
webrev: http://cr.openjdk.java.net/~psadhukhan/8250850/webrev.0/
CSR: https://bugs.openjdk.java.net/browse/JDK-8251856
Regards
Prasanta
More information about the swing-dev
mailing list