当前位置: 首页 > 知识库问答 >
问题:

Java矩形类面积/周长输出0

苏宏峻
2023-03-14

当我Rectangle.java时,我可以得到矩形中输入的长度和宽度,但是当我尝试用getter计算面积/周长时,结果是零。

我尝试添加和删除setter,在getArea和getPerimeter中放入getter/setter方法,但似乎没有任何效果。

//Code provided by the teacher as a template 
Rectangle temp = new Rectangle();
        temp.print();
        System.out.println();

        temp.setLength(2.5);
        temp.setWidth(3.0);
        //Consider how your rectangle will change after setting the length and width to specific values.
        temp.print();

        System.out.println();

        Rectangle r = new Rectangle(3.5,2);
        r.print();




//My Class

public class Rectangle 
{
    private static double length;
    private static double width;
    private static double perimeter;
    private static double area;

    public Rectangle(double length, double width)
    {
        setLength(length);
        setWidth(width);
    }

    public Rectangle()
    {

    }

    public static double getLength() 
    {
        return length;
    }
    public static void setLength(double length) 
    {
        Rectangle.length = length;
    }
    public static double getWidth() 
    {
        return width;
    }
    public static void setWidth(double width)
    {
        Rectangle.width = width;
    }   
    public static double getPerimeter(double length, double width) 
    {
        return 2*width+2*length;
    }

    public static double getArea(double length, double width) 
    {
        area= getLength()*getWidth();
        return length*width;
    }


    public static String print() 
    {
        String Rectangle = new String();
        System.out.println("This rectangle has a length of "+length+" and a width of "+width);
        System.out.println("The area of the rectangle is: "+ area);
        System.out.println("The perimeter of the rectangle is: "+ perimeter);
        return Rectangle;

    }
}

无错误消息

输出:

此矩形的长度为0.0,宽度为0.0矩形的面积为:0.0矩形周长为:0.0

这个矩形的长度为2.5,宽度为3.0。矩形的面积为:0.0。矩形的周长为:0.0

这个矩形的长度为3.5,宽度为2.0。矩形的面积为:0.0。矩形的周长为:0.0

共有1个答案

韦锦程
2023-03-14

您需要更改打印方法并调用周长和面积方法,以便这些变量获得所需的值

 public static String print() 
{
    getPerimeter(length,width);
    getArea(length,width);
    String Rectangle = new String();
    System.out.println("This rectangle has a length of "+length+" and a width of "+width);
    System.out.println("The area of the rectangle is: "+ area);
    System.out.println("The perimeter of the rectangle is: "+ perimeter);
    return Rectangle;

}

我建议不要使用静态关键字,因为值不会绑定到对象

 类似资料:
  • 本文向大家介绍java用接口、多态、继承、类计算三角形和矩形周长及面积的方法,包括了java用接口、多态、继承、类计算三角形和矩形周长及面积的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了java用接口、多态、继承、类计算三角形和矩形周长及面积的方法。分享给大家供大家参考。具体如下: 定义接口规范: 希望本文所述对大家的java程序设计有所帮助。

  • 本文向大家介绍PHP实现的简单三角形、矩形周长面积计算器分享,包括了PHP实现的简单三角形、矩形周长面积计算器分享的使用技巧和注意事项,需要的朋友参考一下 运用PHP面向对象的知识设计一个图形计算器,同时也运用到了抽象类知识,这个计算器可以计算三角形的周长和面积以及矩形的周长和面积。本图形计算器有4个页面:1.PHP图形计算器主页index.php;    2.形状的抽象类shape.class.

  • 问题内容: 我正在寻找一种确定矩形和圆形之间相交区域的快速方法(我需要进行数百万次此类计算)。 一个特殊的属性是,在所有情况下,圆形和矩形始终具有2个相交点。 问题答案: 给定2个交点: *圆内有 *0个顶点 :圆形线段的面积 1个顶点 在圆内:圆弧段和三角形的面积之和。 *圆内有 *2个顶点 :两个三角形和一个圆形线段的面积之和 *圆内有 *3个顶点 :矩形的面积减去三角形的面积再加上圆形线段的

  • 我在Keras建立了一个卷积神经网络。 根据CS231讲座,卷积操作为每个过滤器创建一个特征映射(即激活映射),然后将其堆叠在一起。在我的例子中,卷积层有一个300维的输入。因此,我预计会进行以下计算: 每个过滤器的窗口大小为5。因此,每个滤波器产生300-5 1=296个卷积 但是,实际输出形状看起来不同: 偏移值的形状很有意义,因为每个过滤器都有一个偏移值。然而,我不了解重量的形状。显然,第一

  • 给定一个这样构造的多边形: 这可以正确地计算三角形的面积。但是,如果我用“perimeter”替换area属性,我会得到以下消息:“polygon”对象没有“perimeter”属性,这似乎很荒谬。当然,shapely必须能够找到多边形的周长,就像找到面积一样容易?我已经在这个主题上搜索了一段时间(例如“Python shapely Perimeter”和“Python polygon Perim

  • 本文向大家介绍Java小程序求圆的周长和面积实例 原创,包括了Java小程序求圆的周长和面积实例 原创的使用技巧和注意事项,需要的朋友参考一下 在Java学习的过程中,需要经常拿一些小程序来练习。今天,我们就来看看一个利用蒙特卡洛算法计算圆周率,并输出指定半径的圆的周长和面积的小程序。 代码如下: 输出: 然后你就可以在控制台输入点的个数,求圆周率的近似值,再输入想要求的圆的半径,就可以得到周长和