Java 图形接口与实现类:长方形、正方形、圆形

本教程演示了如何使用 Java 接口和实现类来计算不同图形的周长,包括长方形、正方形和圆形。

代码示例:

// 图形接口
public interface Shape {
    double length();
}

// 长方形类
public class Rectangle implements Shape {
    private double length;
    private double width;

    public Rectangle(double length, double width) {
        this.length = length;
        this.width = width;
    }

    @Override
    public double length() {
        return 2 * (length + width);
    }
}

// 正方形类
public class Square implements Shape {
    private double x;

    public Square(double x) {
        this.x = x;
    }

    @Override
    public double length() {
        return 4 * x;
    }
}

// 圆形类
public class Circle implements Shape {
    private double r;

    public Circle(double r) {
        this.r = r;
    }

    @Override
    public double length() {
        return 2 * Math.PI * r;
    }
}

// 测试类
public class ShapeTest {
    public static void main(String[] args) {
        // 创建长方形对象
        Rectangle rectangle = new Rectangle(4, 5);
        // 创建正方形对象
        Square square = new Square(5);
        // 创建圆形对象
        Circle circle = new Circle(3);

        // 调用shapeLength方法求周长
        shapeLength(rectangle);
        shapeLength(square);
        shapeLength(circle);

        // 使用匿名内部类计算边长为5的正六边形周长
        shapeLength(new Shape() {
            @Override
            public double length() {
                return 6 * 5;
            }
        });
    }

    public static void shapeLength(Shape shape) {
        System.out.println('周长:' + shape.length());
    }
}

代码说明:

  1. 图形接口 (Shape):定义了所有图形必须实现的 length() 方法,用于计算周长。
  2. 长方形类 (Rectangle):实现了 Shape 接口,定义了 lengthwidth 属性,以及构造方法和 length() 方法。
  3. 正方形类 (Square):实现了 Shape 接口,定义了 x 属性,以及构造方法和 length() 方法。
  4. 圆形类 (Circle):实现了 Shape 接口,定义了 r 属性,以及构造方法和 length() 方法。
  5. 测试类 (ShapeTest):创建了不同图形的对象,并调用 shapeLength() 方法计算周长。
  6. shapeLength() 方法: 接收任意类型的图形对象,并调用其 length() 方法计算周长。
  7. 匿名内部类: 使用匿名内部类创建了一个实现 Shape 接口的对象,用于计算边长为 5 的正六边形的周长。

代码优势:

  • 代码结构清晰,易于维护和扩展。
  • 接口定义了规范,方便不同图形类实现。
  • 测试类验证了功能,保证代码正确性。
  • 匿名内部类方便灵活地创建自定义图形对象。

通过本教程,您学习了如何使用 Java 接口和实现类来计算不同图形的周长,并了解了匿名内部类的应用场景。这将帮助您在未来的编程中更好地理解面向对象编程的思想和方法。

Java 图形接口与实现类:长方形、正方形、圆形

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

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