开发者社区> 问答> 正文

定义类Shape表示一般二维图形。Shape具有抽象方法area和perimeter,分别计算形状的

定义类Shape表示一般二维图形。Shape具有抽象方法area和perimeter,分别计算形状的面积和周长。试定义一些二 维形状类(如矩形、三角形、圆形等),这些类均为Shape类的子类。

展开
收起
游客pklijor6gytpx 2019-11-21 14:54:57 2557 0
1 条回答
写回答
取消 提交回答
  • publicabstractdoublearea();
    publicabstractdoubleperimeter();
    }
    classRectangleextendsShape{//矩形
    privatedoublewide;//宽
    privatedoublelongs;//长
    publicRectangle(){
    }
    publicRectangle(doublewide,doublelongs){
    super();
    this.wide=wide;
    this.longs=longs;
    }
    publicdoublearea(){
    returnthis.longs*this.wide;
    }
    publicdoubleperimeter(){
    return(this.longs+this.wide)*2;
    }
    }
    classTriangleextendsShape{//三角形
    privatedoubleedgea;//边长
    privatedoubleedgeb;//边长
    privatedoubleedgec;//边长
    publicTriangle(){
    }
    publicTriangle(doubleedgea,doubleedgeb,doubleedgec){
    super();
    this.edgea=edgea;
    this.edgeb=edgeb;
    this.edgec=edgec;
    }
    publicdoublearea(){
    returnthis.edgea*this.edgeb/2;
    }
    publicdoubleperimeter(){
    returnthis.edgea+this.edgeb+this.edgec;
    }
    }
    classRoundextendsShape{//圆形
    privatedoubleradius;//半径
    publicRound(){
    }
    publicRound(doubleradius){
    super();
    this.radius=radius;
    }
    publicdoublearea(){
    returnthis.radius*this.radius*Math.PI;
    }
    publicdoubleperimeter(){
    returnthis.radius*2*Math.PI;
    }
    }
    publicclassTestDemo{
    publicstaticvoidmain(Stringargs[]){
    Shaperectangle=newRectangle(10.5,20.6);
    Shapetriangle=newTriangle(10.1,20.2,30.3);
    Shaperound=newRound(30.3);
    System.out.println("矩形面积:"+rectangle.area()+",矩形周长:"+rectangle.perimeter());
    System.out.println("三角形面积:"+triangle.area()+",三角形周长:"+
    triangle.perimeter());
    System.out.println("圆形面积:"+round.area()+",圆形周长:"+round.perimeter());
    }
    }
    
    2019-11-21 14:55:36
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载