我想使用Dimension类(java.awt.Dimension),但它只支持整数。我想让Rectangle和Square类像这样:
构造函数:
public Rectangle(Dimension dim(double A, double B)) {
// constructor code
}编写我自己的Dimension类实现是不是更好?
发布于 2013-06-30 19:27:24
不要因为java.awt.Dimension恰好提供了一个与您需要的界面相似的界面,就使用它。正如the documentation中的引言所说:
Dimension类封装组件的宽度和高度...在一个单独的对象中。
组件指的是Java AWT Component。将java.awt.Dimension用于其他任何事情似乎很奇怪。
如果您提供自己的java.awt.Dimension实现,那么它必须遵循与Java Runtime环境提供的接口相同的接口。所以你什么也得不到。顺便说一句,没有必要提供你自己的java.awt.Dimension实现,Java Runtime环境已经提供了一个完美合适的实现。
编写您自己的类,可以处理宽度和高度等浮点值。
发布于 2013-06-30 19:21:46
请参阅
Dimension类将组件(表示为整数精度)的宽度和高度封装在单个对象中。
因此,如果您需要以浮点精度保存宽度和高度的Dimension类,则不能使用java.awt.Dimension。看一看java.awt.Dimension提供的方法,提供自己的实现应该是相当容易的。
发布于 2013-06-30 19:54:19
请改用Dimension.setSize(double,double)。
https://stackoverflow.com/questions/17389805
复制相似问题