在 Java 8 及以前的版本中,应用程序可以调用克隆上的 java.lang.ref.Reference
或其任何已知子类:java.lang.ref.PhantomReference,
java.lang.ref.SoftReference和 java.lang.ref.WeakReference.
但是,在 Java 11 中,"... java.lang.ref.Reference.clone() 方法已被重写
方法被重写,以总是抛出 CloneNotSupportedException.调用
方法的应用程序应将克隆调用替换为构造函数调用,并将引用和引用队列
作为参数。
此规则将标记可能导致抛出 CloneNotSupportedException 的潜在 clone 调用。 检查应用程序,替换任何可能解析为
为 java.lang.ref.Reference.clone()
或其任何已知子类: java.lang.ref.PhantomReference,
java.lang.ref.SoftReference和 java.lang.ref.WeakReference.
该规则具有自动修复功能,可替换任何可能解析为 java.lang.ref.Reference.clone() 或其已知子类的克隆调用。
其任何已知子类: java.lang.ref.PhantomReference, java.lang.ref.SoftReference和 java.lang.ref.WeakReference
的构造函数调用,并将引用和引用队列作为参数传入。
将定制配置复制到应用程序构建文件以启用修订自动化。
有关 Java 11 更改的更多信息,请参阅 Java 11 Release Notes。 有关 java.lang.ref.Reference 类的更多信息,请参阅 Java 类文档。