From fdb855dbfbb20ce9629f651e4e35c756551a66ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=A9=AC=E5=AE=8F=E8=BE=BE?= <12071445+ma-hongda@user.noreply.gitee.com> Date: Mon, 8 May 2023 14:38:41 +0000 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC=E5=8D=81=E4=B8=89=E6=AC=A1=E4=BD=9C?= =?UTF-8?q?=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 马宏达 <12071445+ma-hongda@user.noreply.gitee.com> --- .../5.8.md" | 156 ++++++++++++++++++ 1 file changed, 156 insertions(+) create mode 100644 "48 \351\251\254\345\256\217\350\276\276/5.8.md" diff --git "a/48 \351\251\254\345\256\217\350\276\276/5.8.md" "b/48 \351\251\254\345\256\217\350\276\276/5.8.md" new file mode 100644 index 0000000..d61ea2a --- /dev/null +++ "b/48 \351\251\254\345\256\217\350\276\276/5.8.md" @@ -0,0 +1,156 @@ +(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方法中创建多个圆和矩形对象,再调用方法比较他们的周长或面积。 + +```java +package Day0508; + +public class Graphic { + public double area() { + return 0.0; + } + + public double perimeter() { + return 0.0; + } + + public String getInfo() { + String Graphic=null; + return Graphic; + } +} +class Circle extends Graphic{ + private double radius; + + public Circle(double radius) { + this.radius = radius; + } + + public double getRadius() { + return radius; + } + + public void setRadius(double radius) { + this.radius = radius; + } + + public Circle() { + } + + @Override + public double area() { + return radius*radius*Math.PI; + } + + @Override + public double perimeter() { + return radius*2*Math.PI; + } + + @Override + public String getInfo() { + return "半径:"+radius+"面积:"+radius*radius*Math.PI+"周长:"+radius*2*Math.PI; + } + } + +class Rectangle extends Graphic{ + private double length; + private double width; + + public Rectangle(double length, double width) { + this.length = length; + this.width = width; + } + + public Rectangle() { + } + + 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; + } + + @Override + public double area() { + return length*width; + } + + @Override + public double perimeter() { + return (length+width)*2; + } + + @Override + public String getInfo() { + return "长:"+length+"宽:"+width+"面积:"+length*width+"周长:"+(length+width)*2; + } + } + + + +``` + +## 测试类 + +```java +package Day0508; + +public class Test { + public static void main(String[] args) { + //(4)在测试类中,新建一个比较图形面积的方法,再建一个比较图形周长的方法,main方法中创建多个圆和矩形对象,再调用方法比较他们的周长或面积。 + Graphic yuan = new Circle(3); + double ymj=yuan.area(); + double yzc= yuan.perimeter(); + Graphic ju = new Rectangle(3,3); + double jmj= ju.area(); + double jzc= ju.perimeter(); + boolean mj=BijiaoMj(ymj,jmj); + boolean zc=BijiaoZc(yzc,jzc); + System.out.println("圆形 "+yuan.getInfo()); + System.out.println("矩形 "+ju.getInfo()); + System.out.println("圆形面积大于矩形面积是:"+mj); + System.out.println("圆形周长大于矩形周长是:"+zc); + } + + private static boolean BijiaoZc(double yzc, double jzc) { + return yzc>jzc; + } + private static boolean BijiaoMj(double ymj,double jmj) { + return ymj>jmj; + } +} + +``` + +``` -- Gitee