java.awt

Class Dimension

Implemented Interfaces:
Cloneable, Serializable
Known Direct Subclasses:
DimensionUIResource

public class Dimension
extends Dimension2D
implements Serializable

This class holds a width and height value pair. This is used in plenty of windowing classes, but also has geometric meaning.

It is valid for a dimension to have negative width or height; but it is considered to have no area. Therefore, the behavior in various methods is undefined in such a case.

There are some public fields; if you mess with them in an inconsistent manner, it is your own fault when you get invalid results. Also, this class is not threadsafe.

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

Field Summary

int
height
The height of this object.
int
width
The width of this object.

Constructor Summary

Dimension()
Create a new Dimension with a width and height of zero.
Dimension(int w, int h)
Create a new Dimension with the specified width and height.
Dimension(Dimension d)
Create a new Dimension with width and height identical to that of the specified dimension.

Method Summary

boolean
equals(Object obj)
Tests this object for equality against the specified object.
double
getHeight()
Gets the height of this dimension.
Dimension
getSize()
Returns the size of this dimension.
double
getWidth()
Gets the width of this dimension.
int
hashCode()
Return the hashcode for this object.
void
setSize(double w, double h)
Sets the size of this dimension.
void
setSize(int w, int h)
Sets the width and height of this object to the specified values.
void
setSize(Dimension d)
Sets the width and height of this object to match that of the specified object.
String
toString()
Returns a string representation of this object.

Methods inherited from class java.awt.geom.Dimension2D

clone, getHeight, getWidth, setSize, setSize

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Details

height

public int height
The height of this object.

width

public int width
The width of this object.

Constructor Details

Dimension

public Dimension()
Create a new Dimension with a width and height of zero.

Dimension

public Dimension(int w,
                 int h)
Create a new Dimension with the specified width and height.
Parameters:
w - the width of this object
h - the height of this object

Dimension

public Dimension(Dimension d)
Create a new Dimension with width and height identical to that of the specified dimension.
Parameters:
d - the Dimension to copy
Throws:
NullPointerException - if d is null

Method Details

equals

public boolean equals(Object obj)
Tests this object for equality against the specified object. This will be true if and only if the specified object is an instance of Dimension2D, and has the same width and height.
Overrides:
equals in interface Object
Parameters:
obj - the object to test against
Returns:
true if the object is equal to this

getHeight

public double getHeight()
Gets the height of this dimension.
Overrides:
getHeight in interface Dimension2D
Returns:
the height, as a double

getSize

public Dimension getSize()
Returns the size of this dimension. A pretty useless method, as this is already a dimension.
Returns:
a copy of this dimension
Since:
1.1

getWidth

public double getWidth()
Gets the width of this dimension.
Overrides:
getWidth in interface Dimension2D
Returns:
the width, as a double

hashCode

public int hashCode()
Return the hashcode for this object. It is not documented, but appears to be ((width + height) * (width + height + 1) / 2) + width.
Overrides:
hashCode in interface Object
Returns:
the hashcode

setSize

public void setSize(double w,
                    double h)
Sets the size of this dimension. The values are rounded to int.
Overrides:
setSize in interface Dimension2D
Parameters:
w - the new width
h - the new height
Since:
1.2

setSize

public void setSize(int w,
                    int h)
Sets the width and height of this object to the specified values.
Parameters:
w - the new width value
h - the new height value

setSize

public void setSize(Dimension d)
Sets the width and height of this object to match that of the specified object.
Parameters:
d - the Dimension to get the new width and height from
Throws:
NullPointerException - if d is null
Since:
1.1
See Also:
getSize()

toString

public String toString()
Returns a string representation of this object. The format is: getClass().getName() + "[width=" + width + ",height=" + height + ']'.
Overrides:
toString in interface Object
Returns:
a string representation of this object

Dimension.java -- represents a 2-dimensional span Copyright (C) 1999, 2000, 2002 Free Software Foundation This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.