From 11bcfeea563db48545b7dd3fc8342bb1e6d53243 Mon Sep 17 00:00:00 2001 From: zhouzihao Date: Wed, 8 Apr 2026 17:25:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E6=96=87=E4=BB=B6=E8=87=B3?= =?UTF-8?q?=20'W5=E5=91=A8=E6=A2=93=E6=B5=A9202506050319'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- W5周梓浩202506050319/Person.java | 42 ++++++++++++++++++++++ W5周梓浩202506050319/PersonTest.java | 13 +++++++ W5周梓浩202506050319/Shape.java | 47 +++++++++++++++++++++++++ W5周梓浩202506050319/ShapeTest.java | 14 ++++++++ W5周梓浩202506050319/vehicle.java | 41 +++++++++++++++++++++ 5 files changed, 157 insertions(+) create mode 100644 W5周梓浩202506050319/Person.java create mode 100644 W5周梓浩202506050319/PersonTest.java create mode 100644 W5周梓浩202506050319/Shape.java create mode 100644 W5周梓浩202506050319/ShapeTest.java create mode 100644 W5周梓浩202506050319/vehicle.java diff --git a/W5周梓浩202506050319/Person.java b/W5周梓浩202506050319/Person.java new file mode 100644 index 0000000..befa02a --- /dev/null +++ b/W5周梓浩202506050319/Person.java @@ -0,0 +1,42 @@ +package Person; + +abstract class Person{ + protected String name; + abstract void add(); +} + + +class Student extends Person{ + String studentId;//定义属性 + double score; + public Student(String studentId,String name,double score){ + this.studentId=studentId; + this.name=name; + this.score=score; + } + @Override + void add(){ + System.out.println("已成功添加学生 "+studentId+" "+name+" "+score); + } +} +class Teacher extends Person{ + String teacherId; + String subject; + public Teacher(String teacherId,String name,String subject){ + this.subject=subject; + this.name=name; + this.teacherId=teacherId; + } + @Override + void add(){ + System.out.println("已成功添加老师 "+teacherId+" "+name+" "+subject); + } +} + +class Add{ + public static void addPerson(Person p){ + p.add(); + } +} + + diff --git a/W5周梓浩202506050319/PersonTest.java b/W5周梓浩202506050319/PersonTest.java new file mode 100644 index 0000000..a0786a7 --- /dev/null +++ b/W5周梓浩202506050319/PersonTest.java @@ -0,0 +1,13 @@ +package Person; + +public class PersonTest { + public static void main (String[] args) { + //setting up the first object + Person s1=new Student("0001","Roya",90); + //setting up the second object + Person t1=new Teacher("001","Edward","Biology"); + //using the approach addPerson() + Add.addPerson(s1); + Add.addPerson(t1); + } +} diff --git a/W5周梓浩202506050319/Shape.java b/W5周梓浩202506050319/Shape.java new file mode 100644 index 0000000..4d26e6f --- /dev/null +++ b/W5周梓浩202506050319/Shape.java @@ -0,0 +1,47 @@ +package Shape; + +abstract public class Shape { + abstract void draw(); +} +class Circle extends Shape{ + private double r; + public Circle(double r){ + this.r=r; + } + @Override + public void draw(){ + System.out.println("已绘制半径为"+r+"的圆"); + } +} + +class Rectangle extends Shape{ + private double chang; + private double kuan; + public Rectangle(double chang,double kuan){ + this.chang=chang; + this.kuan=kuan; + } + @Override + public void draw(){ + System.out.println("已绘制长宽分别为"+chang+"和"+kuan+"的矩形"); + } +} + +class Triangle extends Shape{ + private double di; + private double height; + public Triangle(double di,double height){ + this.di=di; + this.height=height; + } + @Override + public void draw(){ + System.out.println("已绘制底和高分别为"+di+"和"+height+"的三角形"); + } +} + +class ShapeUtil{ + public static void drawShape(Shape s){ + s.draw(); + } +} \ No newline at end of file diff --git a/W5周梓浩202506050319/ShapeTest.java b/W5周梓浩202506050319/ShapeTest.java new file mode 100644 index 0000000..f392a76 --- /dev/null +++ b/W5周梓浩202506050319/ShapeTest.java @@ -0,0 +1,14 @@ +package Shape; + +public class ShapeTest { + public static void main(String[] args){ + System.out.println("--测试三个类--"); + //circle + Circle round=new Circle(5); + Rectangle b=new Rectangle(4,7); + Triangle c=new Triangle(8,4); + ShapeUtil.drawShape(round); + ShapeUtil.drawShape(b); + ShapeUtil.drawShape(c); + } +} diff --git a/W5周梓浩202506050319/vehicle.java b/W5周梓浩202506050319/vehicle.java new file mode 100644 index 0000000..3c789bd --- /dev/null +++ b/W5周梓浩202506050319/vehicle.java @@ -0,0 +1,41 @@ +package vehicle; + +abstract class vehicle { + abstract void run(); +} + +class Bike extends vehicle{ + public String model; + public Bike(String model){ + this.model=model; + } + @Override + public void run(){ + System.out.println("已存放一辆"+model+"脚踏车"); + } +} +class Car extends vehicle{ + public String model; + public Car(String model){ + this.model=model; + } + @Override + public void run(){ + System.out.println("已存放一辆"+model+"汽车"); + } +} +class Truck extends vehicle{ + public String model; + public Truck(String model){ + this.model=model; + } + @Override + public void run(){ + System.out.println("已存放一辆"+model+"卡车"); + } +} +class RunVehicle{ + public void Run(vehicle v){ + v.run(); + } +} \ No newline at end of file