编写一个矩形类Rect,包含:
矩形的宽width,矩形的高height。
两个构造方法:
①一个带有两个参数的构造方法,用于将width和height属性初化;
②一个不带参数的构造方法,将矩形初始化为宽和高都为10。
两个成员方法:
①求矩形面积的方法getArea()
②求矩形周长的方法getPerimeter()
过继承Rect类编写一个具有确定位置的矩形类PlainRect,其确定位置用矩形的左上角坐标来标识,包含:
添加两个属性:矩形左上角坐标startX和startY。
两个构造方法:
①带4个参数的构造方法,用于对startX、startY、width和height属性初始化;
②不带参数的构造方法,将矩形初始化为左上角坐标、长和宽都为0的矩形;
添加一个成员方法:
①判断某个点是否在矩形内部的方法isInside(double x,double y)。如在矩形内,返回true, 否则,返回false。
提示:点在矩形内是指满足条件:
x>startX&&x<(startX+width)&&y<startY&&y>(startY-height)
编写测试类Exam2,在main()方法中实现如下功能:
创建一个左上角坐标为(10,10),长为20,宽为10的矩形对象;
判断点(25.2,9)是否在矩形内,并打印输出相关信息;
计算并打印输出矩形的面积和周长。
写作业遇到的问题:
1:java: 缺少返回语句
补上return XXX;
2:
可以添加getter和setter方法,以便外部可以获取和设置height的值
public double getHeight() { return height; } public void setHeight(double height) { this.height = height;
3:java: 不兼容的类型: 从double转换到int可能会有损失
public double getPerimeter(){
this.circum = (this.width+this.height) * 2;
return this.circum;
}
注意看double与上面的是否相符
4:布尔类型
回答:true or false