我正在尝试创建一个程序来创建一个表示矩形的类。矩形由其coordinates (x, y)
指定
左上角及其宽度和高度。该类将用于创建许多矩形对象,
它必须具有以下功能:
toString()
。•在单独的类中写入一个main方法,该方法接受四个数字作为命令行参数, 实例化一个矩形对象,并打印矩形的字符串表示,区域和 周边。
输出应如下所示:
$ java TestRect 1 2 3 4
rectangle = (1.0, 2.0, 3.0, 4.0)
area = 12.0
perimeter = 14.0
$
这是我到目前为止所拥有的
public class TestRect {
public static void main(String[] args) {
double base = 0;
double height = 0;
double area = 0;
double perimeter = 0;
base = Double.parseDouble(args[0]);
height = Double.parseDouble(args[1]);
area = (base * height);
perimeter = 2 * (base + height);
System.out.println("The Area of Rectangle is : "
+ area);
System.out.println("The Perimeter of Rectangle is : "
+ perimeter);
}
}
我无法弄清楚如何做toString部分我也无法弄清楚x,y部分是什么。对此的任何帮助将不胜感激。
答案 0 :(得分:0)
那么,您是否也可能是面向对象编程的新手?因为你所做的更像是一个c程序(实际上它甚至几乎都是......)
你不应该让你的main()方法为你做逻辑,这应该包含在类'方法中。
尝试构建它,如下所示:
public class TestRect {
private double base;
private double height;
private double area;
private double perimeter;
public TestRect (double base, double height) {
this.base = base;
this.height = height;
getPerimeter;
getArea;
}
public double getPerimeter () {
perimeter = 2 * (base + height);
return perimeter;
}
public double getArea () {
area = (base * height);
return area;
}
@Override
public String toString() {
// TODO Auto-generated method stub
// here you can create a string just as you want it to look like
return yourCreatedString;
}
public static void main(String[] args) {
TestRect test = new TestRect(3.0, 4.0);
System.out.println(test.toString());
}
}
也许您还应该阅读有关面向对象概念的内容...... here