黑马程序员技术交流社区

标题: 谁能找出源代码中的错误并且加以改正? [打印本页]

作者: 郭炜    时间: 2012-3-12 03:50
标题: 谁能找出源代码中的错误并且加以改正?
下面的类表示一个矩形,请找出源代码中的错误并改正。
public class Rectangle {
private int width;
private int height;
public Rectangle() {
super(1, 1);
}
public Rectangle(int width, int height) {
this.width = width;
this.height = height;
}
public void getHeight() {
return height;
}
public void setHeight(int height) {
height = height;
}
public void getWidth() {
return width;
}
public void setWidth(int width) {
width = width;
}
public int getArea() {
this.width * this.height;
}
public double getPerimeter() {
2 * (this.width + this.height);
}
}
作者: 贠(yun)靖    时间: 2012-3-12 05:06
super调用的的那个构造函数少两个参数,你的三个GET方法都错了,返回类型怎么能是空的呢,获得面积那个也没加瑞return,唉手机党,太不方便了
作者: 刘豪杰    时间: 2012-3-12 06:07
public class Rectangle {
private int width;
private int height;
public Rectangle {
                          //这里写super(1,1)做什么? Rectangle类又没有继承         
}
public Rectangle(int width, int height) {
this.width = width;
this.height = height;
}
public int getHeight() {         //这里返回值类型要是int类型的,void类型返回值为空,都为空了还怎么运算?
return height;
}
public void setHeight(int height) {
this.height = height;                   //这里用this而不是在下边面积和边长方法中用
}
public int getWidth() {               //跟上边getHeight方法错误一样
return width;
}
public  int  setWidth(int width) {
this.width = width;                //同上边setHeight方法一样
}
public int getArea() {
return width * height;    //计算出结果了应该用return返回一下,this不在这里用
}
public double getPerimeter() {
return 2 * (width + height);    //同上
}
}
作者: 王睿    时间: 2012-3-12 11:06
  1. public class Rectangle {
  2.         private int width;
  3.         private int height;
  4.        
  5.         public Rectangle() {
  6.                 super(1, 1);   //默认继承的是Object,父类中没有这样的构造函数
  7.         }
  8.         public Rectangle(int width, int height) {
  9.                 this.width = width;
  10.                 this.height = height;
  11.         }
  12.         public void getHeight() {
  13.                 return height;   //返回值类型不对,应该是int
  14.         }
  15.         public void setHeight(int height) {
  16.                 height = height; //左边加this
  17.         }
  18.         public void getWidth() {
  19.                 return width;  // 返回值类型不对。
  20.         }
  21.         public void setWidth(int width) {
  22.                 width = width; //左边加this
  23.         }
  24.         public int getArea() {
  25.                 this.width * this.height; //少return语句
  26.         }
  27.         public double getPerimeter() {
  28.                  2 * (this.width + this.height); //少return语句
  29.                  
  30.         }
  31. }
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2