mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 06:45:07 +02:00
8257845: Integrate JEP 390
8254047: [JEP 390] Revise "value-based class" & apply to wrappers 8252181: [JEP 390] Define & apply annotation jdk.internal.ValueBased 8252183: [JEP 390] Add 'lint' warning for @ValueBased classes 8257027: [JEP 390] Diagnose synchronization on @ValueBased classes 8252180: [JEP 390] Deprecate wrapper class constructors for removal Co-authored-by: Roger Riggs <rriggs@openjdk.org> Co-authored-by: Srikanth Adayapalam <sadayapalam@openjdk.org> Co-authored-by: Lois Foltan <lfoltan@openjdk.org> Reviewed-by: rriggs, hseigel, mchung, darcy
This commit is contained in:
parent
ed4c4ee73b
commit
48d8650ae1
113 changed files with 695 additions and 327 deletions
|
@ -50,6 +50,12 @@ import static java.lang.String.UTF16;
|
|||
* {@code int}, as well as other constants and methods useful when
|
||||
* dealing with an {@code int}.
|
||||
*
|
||||
* <p>This is a <a href="{@docRoot}/java.base/java/lang/doc-files/ValueBased.html">value-based</a>
|
||||
* class; programmers should treat instances that are
|
||||
* {@linkplain #equals(Object) equal} as interchangeable and should not
|
||||
* use instances for synchronization, or unpredictable behavior may
|
||||
* occur. For example, in a future release, synchronization may fail.
|
||||
*
|
||||
* <p>Implementation note: The implementations of the "bit twiddling"
|
||||
* methods (such as {@link #highestOneBit(int) highestOneBit} and
|
||||
* {@link #numberOfTrailingZeros(int) numberOfTrailingZeros}) are
|
||||
|
@ -62,6 +68,7 @@ import static java.lang.String.UTF16;
|
|||
* @author Joseph D. Darcy
|
||||
* @since 1.0
|
||||
*/
|
||||
@jdk.internal.ValueBased
|
||||
public final class Integer extends Number
|
||||
implements Comparable<Integer>, Constable, ConstantDesc {
|
||||
/**
|
||||
|
@ -1085,7 +1092,7 @@ public final class Integer extends Number
|
|||
* {@link #valueOf(int)} is generally a better choice, as it is
|
||||
* likely to yield significantly better space and time performance.
|
||||
*/
|
||||
@Deprecated(since="9")
|
||||
@Deprecated(since="9", forRemoval = true)
|
||||
public Integer(int value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
@ -1107,7 +1114,7 @@ public final class Integer extends Number
|
|||
* {@code int} primitive, or use {@link #valueOf(String)}
|
||||
* to convert a string to an {@code Integer} object.
|
||||
*/
|
||||
@Deprecated(since="9")
|
||||
@Deprecated(since="9", forRemoval = true)
|
||||
public Integer(String s) throws NumberFormatException {
|
||||
this.value = parseInt(s, 10);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue