遇到一个类的对象给方法值传递时的出现的问题,求教?
这是书上的一个习题,请注意第3行和第6行的新建类的对象时的参数,根据书上的习题这样的传递参数应该是正确的,但书上的习题都只有一个参数(数据域),这个题有两个参数,编译时提示getArea()和getPerimeter()方法找不到正确的参数,怎么办?

public class TestRectangle{
	public static void main(String[] args){
		Rectangle jx1=new Rectangle(4,40);
    System.out.println("jx1's area is "+jx1.getArea()+
		        "perimeter is"+jx1.getPerimeter());
		Rectangle jx2=new Rectangle(3.5,35.9);
		System.out.println("jx2's area is "+jx2.getArea()+
		                   "perimeter is "+jx2.getPerimeter());                
		
  }
		 
}
class Rectangle{
			//数据域
			double width;
			double height;
			//创建一个无参构造方法
			Rectangle(){
                                                                     width=1;
			     height=1;
				}	
				//创建一个指定值的矩形构造方法
				Rectangle(double newWidth,double newHeight){
					width=newWidth;
					height=newHeight;
					}
				//创建一个计算矩形面积的方法
				double getArea(double width,double height){
					double Area=0;
					Area=width*height;
					return Area;
					}
			  //创建一个计算周长的方法
			  double getPerimeter(double width,double height){
			  	double perimeter=0;
			  	perimeter=(width+height)*2;
			  	return perimeter;
			  	}
			}
------解决方案--------------------修改下,两个方法都不需要传入参数的,你构造器里面已经赋值了,这里就没必要再使用传参了
//创建一个计算矩形面积的方法
double getArea(){
double Area=0;
Area=width*height;
return Area;
}
  //创建一个计算周长的方法
  double getPerimeter(){
  	double perimeter=0;
  	perimeter=(width+height)*2;
  	return perimeter;
  	}
------解决方案--------------------get方法不要带参数,参数通过构造函数或者set方法注入!
------解决方案--------------------类里面的两个方法是带参的,你调用的方法却是不带参的,你可以重写两个不带参的方法,楼上写的那样,加进类里去就可以了。java不像javascript 方法的参数可以省略。
------解决方案--------------------原因:你定义的getArea和getPerimeter方法有参数,但在调用的时候却是调用没有参数的这两个方法,当然会报错;
解决:直接将getArea和getPerimeter方法中的参数去掉即可;
public class TestRectangle
{
	public static void main(String[] args)
	{
		Rectangle jx1 = new Rectangle(4, 40);
		System.out.println("jx1's area is " + jx1.getArea() + "perimeter is"
				+ jx1.getPerimeter());
		Rectangle jx2 = new Rectangle(3.5, 35.9);
		System.out.println("jx2's area is " + jx2.getArea() + "perimeter is "
				+ jx2.getPerimeter());
	}
}
class Rectangle
{
	double width;
	double height;
	Rectangle()
	{
		width = 1;
		height = 1;
	}
	Rectangle(double newWidth, double newHeight)
	{
		width = newWidth;
		height = newHeight;
	}
	double getArea()
	{
//		double Area = 0;
//		Area = width * height;
//		return Area;
		return width*height;
	}
	double getPerimeter()
	{
//		double perimeter = 0;
//		perimeter = (width + height) * 2;
//		return perimeter;
		return (width+height)*2;
	}
}