Number (Java Platform SE 8 )
Keywords: java.lang.Number class
Date: 2026-03-29

compact1, compact2, compact3
java.lang

## Class Number

- java.lang.Object
- - java.lang.Number

- All Implemented Interfaces:
    Serializable
  Direct Known Subclasses:
    AtomicInteger, AtomicLong, BigDecimal, BigInteger, Byte, Double, DoubleAccumulator, DoubleAdder, Float, Integer, Long, LongAccumulator, LongAdder, Short

      public abstract class Number
      extends Object
      implements Serializable

  The abstract class `Number` is the superclass of platform classes representing numeric values that are convertible to the primitive types `byte`, `double`, `float`, `int`, `long`, and `short`. The specific semantics of the conversion from the numeric value of a particular `Number` implementation to a given primitive type is defined by the `Number` implementation in question. For platform classes, the conversion is often analogous to a narrowing primitive conversion or a widening primitive conversion as defining in The Java™ Language Specification for converting between primitive types. Therefore, conversions may lose information about the overall magnitude of a numeric value, may lose precision, and may even return a result of a different sign than the input. See the documentation of a given `Number` implementation for conversion details.
  Since:
    JDK1.0
  See Also:
    Serialized Form
  See The Java™ Language Specification:
    5.1.2 Widening Primitive Conversions, 5.1.3 Narrowing Primitive Conversions

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `Number()`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `byte` | `byteValue()` Returns the value of the specified number as a `byte`, which may involve rounding or truncation.
    `abstract double` | `doubleValue()` Returns the value of the specified number as a `double`, which may involve rounding.
    `abstract float` | `floatValue()` Returns the value of the specified number as a `float`, which may involve rounding.
    `abstract int` | `intValue()` Returns the value of the specified number as an `int`, which may involve rounding or truncation.
    `abstract long` | `longValue()` Returns the value of the specified number as a `long`, which may involve rounding or truncation.
    `short` | `shortValue()` Returns the value of the specified number as a `short`, which may involve rounding or truncation.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### Number

          public Number()

  - ### Method Detail

    - #### intValue

          public abstract int intValue()

      Returns the value of the specified number as an `int`, which may involve rounding or truncation.
      Returns:
        the numeric value represented by this object after conversion to type `int`.

    - #### longValue

          public abstract long longValue()

      Returns the value of the specified number as a `long`, which may involve rounding or truncation.
      Returns:
        the numeric value represented by this object after conversion to type `long`.

    - #### floatValue

          public abstract float floatValue()

      Returns the value of the specified number as a `float`, which may involve rounding.
      Returns:
        the numeric value represented by this object after conversion to type `float`.

    - #### doubleValue

          public abstract double doubleValue()

      Returns the value of the specified number as a `double`, which may involve rounding.
      Returns:
        the numeric value represented by this object after conversion to type `double`.

    - #### byteValue

          public byte byteValue()

      Returns the value of the specified number as a `byte`, which may involve rounding or truncation.

      This implementation returns the result of `intValue()` cast to a `byte`.

      Returns:
        the numeric value represented by this object after conversion to type `byte`.
      Since:
        JDK1.1

    - #### shortValue

          public short shortValue()

      Returns the value of the specified number as a `short`, which may involve rounding or truncation.

      This implementation returns the result of `intValue()` cast to a `short`.

      Returns:
        the numeric value represented by this object after conversion to type `short`.
      Since:
        JDK1.1

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.