java - Java中如何将对象属性值赋给变量?

标签 java

以下代码是我无法理解的代码:

public class Rectangle {

    public Rectangle() {
        double width = 1;
        double height = 1;
    }

    public Rectangle(double w, double h) {
        double width = w;
        double height = h;
    }

    public double getArea(double w, double h) {
        return (w*h);
    }

    public double getPerimeter(double w, double h) {
        return ((2*w)+(2*h));
    }

    public static void main(String[] args) {
        Rectangle oldRectangle = new Rectangle(4, 40);
        Rectangle newRectangle = new Rectangle(3.5, 35.9);
        double height1 = oldRectangle.height;
        double height2 = newRectangle.height;
        double width1 = oldRectangle.width;
        double width2 = newRectangle.width;

        System.out.println("Width of Rectangle 1 is: " + 4);
        System.out.println("Height of Rectangle 1 is: " + 40);
        System.out.println("Area of Rectangle 1 is: " + oldRectangle.getArea(4, 40));
        System.out.println("Perimeter of Rectangle 1 is: " + oldRectangle.getPerimeter(4, 40));
        System.out.println("Width of Rectangle 1 is: " + 3.5);
        System.out.println("Height of Rectangle 1 is: " + 35.9);
        System.out.println("Area of Rectangle 1 is: " + newRectangle.getArea(3.5, 35.9));
        System.out.println("Perimeter of Rectangle 1 is: " + newRectangle.getPerimeter(3.5, 35.9));

    }

}
<小时/>

我被指示为 Rectangle 类创建两个构造函数 - 一个没有参数,但为变量宽度和高度分配了默认值 1。第二个构造函数包含参数,这些参数将接受两个 double 值,这两个 double 值将被分配给适当的变量。

然后,我被告知创建两个“get()”方法,它们返回各自的值 - 在我的例子中,它们是所述矩形的周长和面积。

然后,我被指示创建两个 Rectangle 实例,一个宽度为 4,高度为 40,另一个宽度为 4.5,高度为 35.9。所以,我就是这样做的,并创建了两个新的 Rectangle 对象,如您所见。

最后,我被指示打印出两个矩形对象的宽度、高度、周长和面积。我的问题是我不知道如何引用它们。我参加了 JavaScript 初学者教程类(class),如果我没记错的话,我记得有一种方法可以通过将对象的属性值分配给变量来引用它。我再说一遍“如果我没有记错的话”,所以我可能是错的。已经有一段时间了...

我确实意识到 Java 和 JavaScript 本身是完全不同的东西。 Java Script 是一种基于 Java 开发的脚本语言。

无论如何,任何帮助都将是巨大的。

请随时通过举例帮助我理解如何实现我想要做的事情。您没有使用我的确切代码,但我希望能够让我的代码更有意义。顺便说一句,我正在使用 Eclipse。

最佳答案

您走在正确的道路上。您想要做的是这样的:

public double getArea(Rectangle r){
      return r.width*r.height;
}
public double getPerimeter(Rectangle r){
      return (2*r.width + 2*r.height);
}

对于打印语句,您将硬编码为不必执行的值。

 System.out.println("Width of Rectangle 1 is: " + oldRectangle.width);
    System.out.println("Height of Rectangle 1 is: " + oldRectangle.height);
    System.out.println("Area of Rectangle 1 is: " + getArea(oldRectangle));
    System.out.println("Perimeter of Rectangle 1 is: " + getPerimeter(oldRectangle));

关于java - Java中如何将对象属性值赋给变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29395760/

相关文章:

具有类类型的 Java 反射 getDeclaredMethod()

java - Hibernate二级缓存问题

java - 使用 Spring 与 Java EE 6 注入(inject) JPA EntityManager

java - Android Studio : Cannot resolve symbol 'activity'

java - 调用removeAllViews();仍然导致 IllegalStateException :You must call removeView() on the child's parent first

java数组泛型初始化

java - 无法在android中动态添加TextView

java - 如何从 ArrayList<HashMap<String, String>> android 中获取所有元素

java - GWT 代码服务器使用 Maven 原型(prototype)在新生成的项目中找不到模块

java - f :setPropertyActionListener: Parent is not of type ActionSource导致的JSF标签异常