public class Example4_5 { public static void main(String args[]) { Rect ractangle = new Rect(); double width = 109.87; double height = 25.18; double area=ractangle.getArea(); System.out.println("矩形的面积:"+area); Lader lader=new Lader(); lader.above=10.798; lader.bottom=156.65; lader.height=18.12; area=lader.getArea(); System.out.println("梯形的面积:"+area); } }那为什么这样算出来矩形的面积为0
时间: 2024-03-25 11:35:26 浏览: 17
你的程序中没有设置矩形的长和宽,因此默认值为0,所以计算出来的矩形面积也为0。你需要在使用 Rect 类的 getArea 方法之前,先设置矩形的长和宽,例如:
```java
double width = 109.87;
double height = 25.18;
ractangle.width = width;
ractangle.height = height;
double area=ractangle.getArea();
System.out.println("矩形的面积:"+area);
```
这样就可以正确计算矩形的面积了。
相关问题
Rect类和Lader类计算方法已经编辑好,以下程序哪里出现了问题package hj; public class Example4_5 { public static void main(String args[]) { Rect ractangle = new Rect(); int width,height; double width = 109.87; double height = 25.18; double area=ractangle.getArea(); System.out.println("矩形的面积:"+area); Lader lader=new Lader(); lader.above=10.798; lader.bottom=156.65; lader.height=18.12; area=lader.getArea(); System.out.println("梯形的面积:"+area); } }
在程序中出现了重复声明变量的错误,即在第 7 和 8 行已经声明了 width 和 height 变量,但是在第 9 和 10 行又重新声明了相同名称的变量,导致编译错误。应该将第 9 和 10 行改为赋值语句,如下所示:
```java
double width = 109.87;
double height = 25.18;
ractangle.width = width;
ractangle.height = height;
```
这样就可以正确地使用 Rect 类进行计算了。
package hj; public class Rect { double width; double height; double getArea() { return width*height; } } public class Lader { double above; //梯形的上底 double bottom; double height; double getArea() { return (above+bottom)*height/2; } } public class Example4_5 { public static void main(String args[]) { Rect ractangle = new Rect(); ractangle.width=109.87; ractangle.height=25.18; double area=ractangle.getArea(); System.out.println("矩形的面积:"+area); Lader lader=new Lader(); lader.above=10.798; lader.bottom=156.65; lader.height=18.12; area=lader.getArea(); System.out.println("梯形的面积:"+area); } }这个编程哪里有问题
这段代码在语法上没有问题,但是它存在一些设计上的问题。比如说:
1. 类名的拼写不规范,应该是Rectangle而不是Ractangle。
2. 我们应该使用封装来保护类的属性,而不是将属性声明为public,因为这样会破坏类的封装性,导致代码不够健壮。
3. 在Lader类中,above应该是上底,而不是下底。bottom应该是下底,而不是上底。
4. 在Example4_5类中,我们应该使用构造函数来初始化对象,而不是直接访问类的属性。
5. 我们应该在程序中添加注释来解释每个类、方法和变量的作用,以便于其他人理解我们的代码。