So I'm trying to create a program that When you enter 4 arguments through command line such as 1 2 3 4. It outputs:
java TestRect 1 2 3 4
rectangle = (1.0, 2.0, 3.0, 4.0)
area = 12.0
perimeter = 14.0
Here is what I have so far:
public class TestRect {
private double x;
private double y;
private double base;
private double height;
private double area;
private double perimeter;
public double getPerimeter () {
perimeter = 2 * (base + height);
return perimeter;
}
public double getArea () {
area = (base * height);
return area;
}
@Override
public String toString() {
return "("+x+","+y+","+base+","+height+")";
}
public static void main(String[] args) {
TestRect test = new TestRect((args[0]), (args[1]), (args[2]), (args[3]));
System.out.println(test.toString());
System.out.println("Area = " + area);
System.out.println("Perimeter = " + perimeter);
}
}
When I run the program I get an error that reads:
TestRect.java:27: error: constructor TestRect in class TestRect cannot be applied to given types;
TestRect test = new TestRect((args[0]), (args[1]), (args[2]), (args[3]));
^
required: no arguments
found: String,String,String,String
reason: actual and formal argument lists differ in length
TestRect.java:29: error: non-static variable area cannot be referenced from a static context
System.out.println("Area = " + area);
^
TestRect.java:30: error: non-static variable perimeter cannot be referenced from a static context
System.out.println("Perimeter = " + perimeter);
^
3 errors
What am I doing wrong? My knowledge in java is very limited.
*Full disclosure: This program is not for any assignments or homework. It is purely for my knowledge.