Dimension (Java Platform SE 8 )
Keywords: java.awt.Dimension class
Date: 2026-04-17

java.awt

## Class Dimension

- java.lang.Object
- - java.awt.geom.Dimension2D
  - - java.awt.Dimension

- All Implemented Interfaces:
    Serializable, Cloneable
  Direct Known Subclasses:
    DimensionUIResource

      public class Dimension
      extends Dimension2D
      implements Serializable

  The `Dimension` class encapsulates the width and height of a component (in integer precision) in a single object. The class is associated with certain properties of components. Several methods defined by the `Component` class and the `LayoutManager` interface return a `Dimension` object.

  Normally the values of `width` and `height` are non-negative integers. The constructors that allow you to create a dimension do not prevent you from setting a negative value for these properties. If the value of `width` or `height` is negative, the behavior of some methods defined by other objects is undefined.

  Since:
    1.0
  See Also:
    `Component`, `LayoutManager`, Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `int` | `height` The height dimension; negative values can be used.
    `int` | `width` The width dimension; negative values can be used.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Dimension()` Creates an instance of `Dimension` with a width of zero and a height of zero.
    `Dimension(Dimension d)` Creates an instance of `Dimension` whose width and height are the same as for the specified dimension.
    `Dimension(int width, int height)` Constructs a `Dimension` and initializes it to the specified width and specified height.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(Object obj)` Checks whether two dimension objects have equal values.
    `double` | `getHeight()` Returns the height of this `Dimension` in double precision.
    `Dimension` | `getSize()` Gets the size of this `Dimension` object.
    `double` | `getWidth()` Returns the width of this `Dimension` in double precision.
    `int` | `hashCode()` Returns the hash code for this `Dimension`.
    `void` | `setSize(Dimension d)` Sets the size of this `Dimension` object to the specified size.
    `void` | `setSize(double width, double height)` Sets the size of this `Dimension` object to the specified width and height in double precision.
    `void` | `setSize(int width, int height)` Sets the size of this `Dimension` object to the specified width and height.
    `String` | `toString()` Returns a string representation of the values of this `Dimension` object's `height` and `width` fields.

    - ### Methods inherited from class java.awt.geom.Dimension2D

      `clone, setSize`

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

      `finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### width

          public int width

      The width dimension; negative values can be used.
      Since:
        1.0
      See Also:
        `getSize()`, `setSize(double, double)`

    - #### height

          public int height

      The height dimension; negative values can be used.
      Since:
        1.0
      See Also:
        `getSize()`, `setSize(double, double)`

  - ### Constructor Detail

    - #### Dimension

          public Dimension()

      Creates an instance of `Dimension` with a width of zero and a height of zero.

    - #### Dimension

          public Dimension(Dimension d)

      Creates an instance of `Dimension` whose width and height are the same as for the specified dimension.
      Parameters:
        `d` - the specified dimension for the `width` and `height` values

    - #### Dimension

          public Dimension(int width,
                           int height)

      Constructs a `Dimension` and initializes it to the specified width and specified height.
      Parameters:
        `width` - the specified width
        `height` - the specified height

  - ### Method Detail

    - #### getWidth

          public double getWidth()

      Returns the width of this `Dimension` in double precision.
      Specified by:
        `getWidth` in class `Dimension2D`
      Returns:
        the width of this `Dimension`.
      Since:
        1.2

    - #### getHeight

          public double getHeight()

      Returns the height of this `Dimension` in double precision.
      Specified by:
        `getHeight` in class `Dimension2D`
      Returns:
        the height of this `Dimension`.
      Since:
        1.2

    - #### setSize

          public void setSize(double width,
                              double height)

      Sets the size of this `Dimension` object to the specified width and height in double precision. Note that if `width` or `height` are larger than `Integer.MAX_VALUE`, they will be reset to `Integer.MAX_VALUE`.
      Specified by:
        `setSize` in class `Dimension2D`
      Parameters:
        `width` - the new width for the `Dimension` object
        `height` - the new height for the `Dimension` object
      Since:
        1.2

    - #### getSize

          public Dimension getSize()

      Gets the size of this `Dimension` object. This method is included for completeness, to parallel the `getSize` method defined by `Component`.
      Returns:
        the size of this dimension, a new instance of `Dimension` with the same width and height
      Since:
        1.1
      See Also:
        `setSize(double, double)`, `Component.getSize()`

    - #### setSize

          public void setSize(Dimension d)

      Sets the size of this `Dimension` object to the specified size. This method is included for completeness, to parallel the `setSize` method defined by `Component`.
      Parameters:
        `d` - the new size for this `Dimension` object
      Since:
        1.1
      See Also:
        `getSize()`, `Component.setSize(int, int)`

    - #### setSize

          public void setSize(int width,
                              int height)

      Sets the size of this `Dimension` object to the specified width and height. This method is included for completeness, to parallel the `setSize` method defined by `Component`.
      Parameters:
        `width` - the new width for this `Dimension` object
        `height` - the new height for this `Dimension` object
      Since:
        1.1
      See Also:
        `getSize()`, `Component.setSize(int, int)`

    - #### equals

          public boolean equals(Object obj)

      Checks whether two dimension objects have equal values.
      Overrides:
        `equals` in class `Object`
      Parameters:
        `obj` - the reference object with which to compare.
      Returns:
        `true` if this object is the same as the obj argument; `false` otherwise.
      See Also:
        `Object.hashCode()`, `HashMap`

    - #### hashCode

          public int hashCode()

      Returns the hash code for this `Dimension`.
      Overrides:
        `hashCode` in class `Object`
      Returns:
        a hash code for this `Dimension`
      See Also:
        `Object.equals(java.lang.Object)`, `System.identityHashCode(java.lang.Object)`

    - #### toString

          public String toString()

      Returns a string representation of the values of this `Dimension` object's `height` and `width` fields. This method is intended to be used only for debugging purposes, and the content and format of the returned string may vary between implementations. The returned string may be empty but may not be `null`.
      Overrides:
        `toString` in class `Object`
      Returns:
        a string representation of this `Dimension` object

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.