From 15d177f1a2a8093521047d866fd50d9b09eb273d Mon Sep 17 00:00:00 2001 From: ZhengJiayin <13230092115@163.com> Date: Fri, 3 Apr 2026 17:03:05 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4ShapeTest.java=E5=9B=BE?= =?UTF-8?q?=E5=BD=A2=E7=B1=BB=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ShapeTest.java | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 ShapeTest.java diff --git a/ShapeTest.java b/ShapeTest.java new file mode 100644 index 0000000..26785a5 --- /dev/null +++ b/ShapeTest.java @@ -0,0 +1,41 @@ +// 父类 Shape +class Shape { + // 父类 draw 方法,子类重写 + public void draw() { + System.out.println("绘制通用图形"); + } +} + +// 子类 Circle,重写 draw 方法 +class Circle extends Shape { + @Override + public void draw() { + System.out.println("绘制圆形"); + } +} + +// 子类 Rectangle,重写 draw 方法 +class Rectangle extends Shape { + @Override + public void draw() { + System.out.println("绘制矩形"); + } +} + +// 主类,包含 drawShape 方法和 main 方法 +public class ShapeTest { + // 多态方法:接收 Shape 类型参数,调用其 draw 方法 + public static void drawShape(Shape s) { + s.draw(); + } + + // main 方法,程序入口 + public static void main(String[] args) { + // 测试:创建子类对象,传入 drawShape 方法 + Shape circle = new Circle(); + Shape rectangle = new Rectangle(); + + drawShape(circle); + drawShape(rectangle); + } +} \ No newline at end of file