实验报告:图形面积计算器的设计与实现 一、实验目的 掌握Java面向对象编程(OOP)的核心概念:抽象类、继承、多态。 理解并应用单一职责原则进行代码重构。 学会绘制UML类图以描述类与类之间的关系。 探讨组合与继承在设计模式中的应用场景。 二、实验内容 设计并实现一个图形面积计算器,要求如下: 定义一个抽象类 Shape,包含抽象方法 getArea()。 创建 Circle(圆形)、Rectangle(矩形)、Triangle(三角形)三个具体类继承 Shape,并实现面积计算逻辑。 编写工具类 ShapeUtil,利用多态特性统一打印不同图形的面积。 绘制类图并分析设计思路。 三、核心代码实现 抽象类 Shape:定义了所有图形的通用行为 getArea(),强制子类必须实现该逻辑。 多态的应用:在 ShapeUtil.printArea(Shape shape) 方法中,参数类型为父类 Shape,但在运行时可以根据传入的实际对象(如 Circle 或 Rectangle)动态调用对应的 getArea() 方法。 四、类图设计 继承关系:Circle、Rectangle、Triangle 均继承自 Shape,体现了“是一个”的关系。 依赖关系:ShapeUtil 通过方法参数依赖 Shape 类,体现了工具类对抽象接口的调用。 实验反思 AI在代码生成、错误排查和文档撰写中发挥了关键作用。例如,它快速解决了“类名与文件名不一致”的编译问题,并提供了可运行的测试代码,大幅缩短了调试时间。但我也意识到,AI生成的代码需结合具体需求调整,不能盲目依赖。此外,AI对“组合与继承”等理论概念的解释,帮助我弥补了知识盲点,但需进一步结合教材深入理解其应用场景。本次实验不仅巩固了OOP知识,更让我体会到AI工具在工程实践中的价值与边界。未来,我将更注重理论与工具的结合,以提升编程效率与代码质量。