|
CSR :
|
Summary
-------
Update `java.lang.invoke.VarHandle` as a sealed class
Problem
-------
As specified in the class specification, `VarHandle`s cannot be subclassed by users. It does not have public constructor.
Solution
--------
Make `java.lang.invoke.VarHandle` a sealed class.
Specification
-------------
```
-public abstract class VarHandle implements Constable {
+public abstract sealed class VarHandle implements Constable
```
All permitted classes are package-private and not listed in the above specification change. The javadoc of VarHandle shows that it's a public abstract sealed class without the permits clause.