按要求写出Rectangle类的定义
Rectangle类是以下结构:考试只需要填写该段代码!
class Rectangle{
....
}
注意:因为是单文件编译,Rectangle类不能定义成public,不能在class签名加public!按照上述结构定义。不用写主函数,只用写类的定义即可。建议使用String.format来对输出字符串进行格式化。
要求:
私有变量width和height,类型double用于存宽和高;
对变量width和height的set与get方法;
一个静态变量numberOfObjects,用于统计类创建的个数;
一个静态方法getNumberOfObjects,返回对象被创建的个数;
一个静态方法printNumberOfObjects打印对象被创建的个数(详见输入输出);
getArea方法,返回矩形的面积;
getPerimeter方法,返回矩形的周长;
重写(overwrite)toString方法,按照格式要求返回对象的信息(详见输入输出);
需要判断width或者height小于0的情况,并按照要求在toString方法中输出(详见输入输出)
// 类定义在这里!类定义的代码就是你的答案。
// 下面是测试代码,不用写在你的答案中!
public class Main {
public static void main(String[] args) {
double w, h;
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()) {
w = scanner.nextDouble();
h = scanner.nextDouble();
Rectangle rectangle = new Rectangle(w, h);
rectangle.setWidth(w);
rectangle.setHeight(h);
System.out.printf("Object %d Width=%f Height=%f Perimeter=%f Area=%f\n", Rectangle.getNumberOfObjects(),
rectangle.getWidth(), rectangle.getHeight(), rectangle.getPerimeter(), rectangle.getArea());
System.out.println(rectangle.toString());
Rectangle.printNumberOfObjects();
}
}
}