From b162de38d471cb553feaaac373228b49f649add3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=98=E6=96=87=E8=AF=9A?= <3287861587@qq.com> Date: Tue, 9 May 2023 00:29:30 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../20230508 \345\244\232\346\200\201 .md" | 207 ++++++++++++++++++ 1 file changed, 207 insertions(+) create mode 100644 "08 \345\256\230\346\226\207\350\257\232/20230508 \345\244\232\346\200\201 .md" diff --git "a/08 \345\256\230\346\226\207\350\257\232/20230508 \345\244\232\346\200\201 .md" "b/08 \345\256\230\346\226\207\350\257\232/20230508 \345\244\232\346\200\201 .md" new file mode 100644 index 0000000..3fe2988 --- /dev/null +++ "b/08 \345\256\230\346\226\207\350\257\232/20230508 \345\244\232\346\200\201 .md" @@ -0,0 +1,207 @@ +(1)父类Graphic图形 + +- public double area()方法:返回0.0 +- public double perimeter()方法:返回0.0 +- public String getInfo()方法,返回图形面积和图形周长 + +(2)子类Circle圆继承Graphic图形 + +- 包含属性:radius,属性私有化 +- 包含get/set方法 +- 重写area()求面积方法 +- 重写perimeter()求周长方法 +- 重写getInfo()方法,返回圆的半径,面积和周长 + +(3)子类矩形Rectangle继承Graphic图形 + +- 包含属性:length、width,属性私有化 +- 包含get/set方法 +- 重写area()求面积方法 +- 重写perimeter()求周长方法 +- 重写getInfo()方法,返回长和宽,面积、周长信息 + +(4)在测试类中,新建一个比较图形面积的方法,再建一个比较图形周长的方法,main方法中创建多个圆和矩形对象,再调用方法比较他们的周长或面积。 + +### 父类Graphic图形 + +~~~ java +package Day20230508; + +public abstract class Graphic { + + private String bijiao; + + public Graphic(){} + + public Graphic(String bijiao) { + this.bijiao = bijiao; + } + + public String getbijiao() { + return bijiao; + } + + public void setName(String bijiao) { + this.bijiao = bijiao; + } + + + public double area(){ + return 0.0; + } + + public double perimeter(){ + return 0.0; + } + + public String getInfo(){ + return null; + } + + } + + +~~~ + +### 子类Circle圆继承Graphic图形 + +~~~ java +package Day20230508; + +public class Circle extends Graphic{ + //半径 + private double radius; + + public Circle(){} + + public Circle(String bijiao, double radius) { + super(bijiao); + this.radius = radius; + } + + public double getRadius() { + return radius; + } + + public void setRadius(double radius) { + this.radius = radius; + } + + //计算圆面积 + @Override + public double area() { + return Math.PI*radius*radius; + } + + //计算圆周长 + @Override + public double perimeter() { + return 2*Math.PI*radius; + } + + //获取信息 + @Override + public String getInfo() { + return getbijiao()+"半径:"+radius+"面积:"+area()+"周长:"+perimeter(); + } +} + +~~~ + +### 子类矩形Rectangle继承Graphic图形 + +~~~ java +package Day20230508; + +public class Rectangle extends Graphic { + private double length; + private double width; + + public Rectangle() { + } + + public Rectangle(String bijiao, double length, double width) { + super(bijiao); + this.length = length; + this.width = width; + } + + public Rectangle(double length, double width) { + this.length = length; + this.width = width; + } + + public double getLength() { + return length; + } + + public void setLength(double length) { + this.length = length; + } + + public double getWidth() { + return width; + } + + public void setWidth(double width) { + this.width = width; + } + public double area(){ + return length*width; + } + public double perimeter(){ + return length*width*2; + } + public String getInfo(){ + return getbijiao()+"长:"+length+"宽"+width+"面积:"+area()+"周长:"+perimeter(); + } +} + +~~~ + +### 测试类 + +~~~ java +package Day20230508; + +public class Test { + private static void getArea(Graphic y1, Graphic y2) { + if(y1.area()>y2.area()){ + System.out.println(y1.getbijiao()+"的面积大于"+y2.getbijiao()); + }else{ + System.out.println(y2.getbijiao()+"的面积大于"+y1.getbijiao()); + } + } + public static void getPerimeter(Graphic a ,Graphic b){ + if(a.perimeter()>b.perimeter()){ + System.out.println(a.getbijiao()+"的周长大于"+b.getbijiao()); + }else{ + System.out.println(b.getbijiao()+"的周长大于"+a.getbijiao()); + } + } + + + public static void main(String[] args) { + Graphic y1 = new Circle("圆形1",12); + System.out.println(y1.getInfo()); + Graphic y2 = new Circle("圆形2",22); + System.out.println(y2.getInfo()); + + Graphic j1 = new Rectangle("矩形1",12,2); + System.out.println(j1.getInfo()); + Graphic j2 = new Rectangle("矩形2",22,12); + System.out.println(j2.getInfo()); + + getArea(y1,y2); + getArea(j1,j2); + getPerimeter(y1,y2); + getPerimeter(j1,j2); + } + + + +} + + +~~~ + -- Gitee From 2b56d9383780ceb433f79867189dbe70309bea47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=98=E6=96=87=E8=AF=9A?= <3287861587@qq.com> Date: Tue, 9 May 2023 00:31:07 +0800 Subject: [PATCH 2/2] zuoye --- .../20230508 \345\244\232\346\200\201 .md" | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git "a/08 \345\256\230\346\226\207\350\257\232/20230508 \345\244\232\346\200\201 .md" "b/08 \345\256\230\346\226\207\350\257\232/20230508 \345\244\232\346\200\201 .md" index 3fe2988..788ae1b 100644 --- "a/08 \345\256\230\346\226\207\350\257\232/20230508 \345\244\232\346\200\201 .md" +++ "b/08 \345\256\230\346\226\207\350\257\232/20230508 \345\244\232\346\200\201 .md" @@ -69,7 +69,7 @@ public abstract class Graphic { package Day20230508; public class Circle extends Graphic{ - //半径 + private double radius; public Circle(){} @@ -87,19 +87,19 @@ public class Circle extends Graphic{ this.radius = radius; } - //计算圆面积 + @Override public double area() { return Math.PI*radius*radius; } - //计算圆周长 + @Override public double perimeter() { return 2*Math.PI*radius; } - //获取信息 + @Override public String getInfo() { return getbijiao()+"半径:"+radius+"面积:"+area()+"周长:"+perimeter(); -- Gitee