【问题标题】:Java Intro to Class And Objects [closed]Java 类和对象简介 [关闭]
【发布时间】:2017-08-01 16:07:42
【问题描述】:

我在暑假完成的课程和物品练习让我发疯了。我知道这应该很容易,但由于某种原因,我无法理解它,所以我希望这里有人可以提供帮助? 以下是简报:

根据下面的规范编写一个类来表示一个矩形:

私人会员:

  • 双倍宽度 - 矩形的宽度
  • 双倍高度 - 矩形的高度

公共方法:

  • Rectangle() – 创建大小为 1 的矩形的默认构造函数 1

  • Rectangle (double w, double h) – 创建一个 指定宽度和高度的矩形

  • double area() – 计算并返回矩形的面积

  • void scale(double factor) – 按指定比例缩放矩形 因素

编写一个主程序来创建 3 个矩形:第一个将使用默认构造函数,第二个将是 矩形 2 x 3,第三个是 4 x 6 矩形。打印出每个矩形的面积,然后缩放 第一个矩形乘以 4,第二个乘以 0.5,然后打印出新区域。

我还包含了我目前编写的代码:

package ac.uk.ljmu.s016classesandobjects;

public class T2Rectangle 
{
    private double width;
    private double height;

    public void Rectangle () { 
        // default constructor which creates a rectangle of size 1 by 1.
        width = 1;
        height = 1;
    }

    void Rectangle (double w, double h) { 
        // constructor which creates a rectangle of specified width and height.
        this.width = w;
        this.height = h;
    }

    double area() {
        // calculates and returns the area of a rectangle.
        return width * height;
    }

    void scale(double factor) {
        // scales a rectangle by a specified scale factor.

        // some sort of calculation involving factor * area?
    }
}

这是主要的方法(我写的很少):

package ac.uk.ljmu.s016classesandobjects;

public class T2Main {

    public static void main(String[] args) {
        T2Rectangle R1 = new T2Rectangle();
        T2Rectangle R2 = new T2Rectangle();
        T2Rectangle R3 = new T2Rectangle();
    }
}

提前感谢所有好心人。

【问题讨论】:

  • 你需要问一个具体的问题。你不能只是把你的作业丢在这里寻求一般帮助。
  • 代码遇到什么问题?
  • 最明显的问题,构造函数是不是方法,它必须与类同名并且不是void

标签: java class object methods void


【解决方案1】:

更改您的构造函数
public void Rectangle(...)

public T2Rectangle(...)

对于scale()

应该是这样的……

this.width *= factor;
this.height *= factor;

【讨论】:

  • 老实说,我认为重命名类而不是构造函数对促进重用更有意义。我想这是主观的,因为它是家庭作业。
猜你喜欢
  • 2010-09-18
  • 1970-01-01
  • 1970-01-01
  • 2014-03-20
  • 2011-02-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-27
相关资源
最近更新 更多