我的意思是,出于所有实际目的,为什么在java.awt中定义了两次?
答案 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,因为您在屏幕坐标和像素上操作,有时最好省略十进制值。另一方面,一般几何应该仍然支持浮点矩形。但这只是猜测...