java.awt.Rectangle类和java.awt.geom.Rectangle2D.Double类有什么区别?

时间:2015-04-06 16:37:12

标签: java awt

我的意思是,出于所有实际目的,为什么在java.awt中定义了两次?

2 个答案:

答案 0 :(得分:0)

Rectangle2D.Double允许您定义具有浮点尺寸的矩形。 Rectangle没有。此外,您必须了解Rectangle被改装为Rectangle2D的子类,其类定义已更改以扩展Rectangle2D,以便(a)可以将其抽象为此新的父类,和(b)它可以使用更一般的Rectangle2D

中的所有方法

答案 1 :(得分:0)

Rectangle2D.Double支持将double指定为x,y,width和height。

矩形只允许int

文件中明确说明:
http://docs.oracle.com/javase/7/docs/api/java/awt/Rectangle.html
http://docs.oracle.com/javase/7/docs/api/java/awt/geom/Rectangle2D.Double.html

其中一个原因可能是AWT主要用于UI,因为您在屏幕坐标和像素上操作,有时最好省略十进制值。另一方面,一般几何应该仍然支持浮点矩形。但这只是猜测...