Java 矩形类 (Rectangle) 实现及测试示例

本文将介绍如何使用 Java 编写一个名为 'Rectangle' 的矩形类,该类包含长度、宽度、面积、周长等属性和方法。并提供完整的代码示例和测试用例,帮助您理解 Java 类和对象的概念以及如何进行面向对象编程。

1. Rectangle 类定义

public class Rectangle {
    private double length;
    private double width;
    
    public Rectangle() {
        this.length = 1;
        this.width = 1;
    }
    
    public Rectangle(double length, double width) {
        this.length = length;
        this.width = width;
    }
    
    public double getArea() {
        return length * width;
    }
    
    public double getPerimeter() {
        return 2 * (length + width);
    }
    
    public void setWidth(double width) {
        this.width = width;
    }
    
    public void setLength(double length) {
        this.length = length;
    }
    
    public double getWidth() {
        return width;
    }
    
    public double getLength() {
        return length;
    }
}

2. 测试类 (RectangleTest)

public class RectangleTest {
    public static void main(String[] args) {
        Rectangle r1 = new Rectangle();
        System.out.println('r1: length=' + r1.getLength() + ', width=' + r1.getWidth());
        System.out.println('r1: area=' + r1.getArea() + ', perimeter=' + r1.getPerimeter());
        
        Rectangle r2 = new Rectangle(3, 4);
        System.out.println('r2: length=' + r2.getLength() + ', width=' + r2.getWidth());
        System.out.println('r2: area=' + r2.getArea() + ', perimeter=' + r2.getPerimeter());
        
        r1.setWidth(2);
        r1.setLength(3);
        System.out.println('r1: length=' + r1.getLength() + ', width=' + r1.getWidth());
        System.out.println('r1: area=' + r1.getArea() + ', perimeter=' + r1.getPerimeter());
    }
}

3. 输出结果

r1: length=1.0, width=1.0
r1: area=1.0, perimeter=4.0
r2: length=3.0, width=4.0
r2: area=12.0, perimeter=14.0
r1: length=3.0, width=2.0
r1: area=6.0, perimeter=10.0

结论

从输出结果可以看出,Rectangle 类中的方法都能正常工作,测试类也能够正确地测试这些方法。

总结

本文介绍了如何使用 Java 编写一个简单的矩形类,并通过测试类验证了代码的正确性。希望这个示例能够帮助您更好地理解 Java 类和对象的概念,以及如何进行面向对象编程。

Java 矩形类 (Rectangle) 实现及测试示例

原文地址: https://www.cveoy.top/t/topic/oVDu 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录