<Swing Dev> RFR: 8252722: More Swing plaf APIs that rely on default constructors
Prasanta Sadhukhan
psadhukhan at openjdk.java.net
Fri Sep 18 12:52:24 UTC 2020
Please review a fix for issue where it was seen that several classes in plaf package 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 add explicit public no-arg constructors for public classes and protected no-arg constructor for
protected classes for javax.swing module
-------------
Commit messages:
- 8252722: More Swing plaf APIs that rely on default constructors
Changes: https://git.openjdk.java.net/jdk/pull/251/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=251&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8252722
Stats: 457 lines in 36 files changed: 453 ins; 0 del; 4 mod
Patch: https://git.openjdk.java.net/jdk/pull/251.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/251/head:pull/251
PR: https://git.openjdk.java.net/jdk/pull/251
More information about the swing-dev
mailing list