设计一个形状类Shape,方法:求周长和求面积

形状类的子类:Rect(矩形),Circle(圆形)

Rect类的子类:Square(正方形)

不同的子类会有不同的计算周长和面积的方法

创建三个不同的形状对象,放在Shape类型的数组里,分别打印出每个对象的周长和面积

package day0419;

public abstract class Shape {

public abstract double getZhouChang();

public abstract double getMianJi();

}

package day0419;

public class Rect extends Shape {

private double length;

private double width;

// 构造方法

public Rect(double length, double width)

{

this.length = length;

this.width = width;

}

public Rect() {

}

public double getZhouChang() {

return (length + width) *

2;

}

public double getMianJi() {

return length * width;

}

public double getLength() {

return length;

}

public double getWidth() {

return width;

}

public void setLength(double length) {

this.length = length;

}

public void setWidth(double width) {

this.width = width;

}

}

package day0419;

public class Circle extends Shape {

private double banjing;

public Circle(double banjing) {

this.banjing = banjing;

}

public Circle(){

}

public double getBanJing() {

return banjing;

}

public void setBanJing(double banjing) {

this.banjing = banjing;

}

public double getZhouChang() {

return Math.PI*banjing*2;

}

public double getMianJi() {

return

Math.PI*banjing*banjing;

}

}

package day0419;

public class Square extends Rect {

public Square(double len) {

// 调用父类构造方法

super (len,len);

}

public Square() {

super ();

}

}

package day0419;

public class ShapeTest {

public static void main(String args[]) {

Shape[] ss = new

Shape[3];

Rect r = new Rect();

r.setLength(3);

r.setWidth(2);

// ss[0] = new Rect(3,2);

ss[0] = r;

ss[1] = new Circle(2);

ss[2] = new Square(4);

for (int i = 0; i

< ss.length; i++) {

System.out.println(ss[i].getZhouChang());

System.out.println(ss[i].getMianJi());

}

}

}

java形状类_[转载]JAVA 设计一个形状类Shape 求周长和面积相关推荐

  1. java设计一个立方体类box_实例1: 设计一个立方体类Box,定义三个属性,分别是长,宽,高。定义二个方法,分别计算并输出立方体的体积和表面积。_学小易找答案...

    [填空题]表达式 list(filter(lambda x:x>2, [0,1,2,3,0,0])) 的值为 _________ . [填空题]表达式 len(' 中国 '.encode('ut ...

  2. java string()函数_转载java String.split()函数的用法详解

    转载java String.split()函数的用法详解 如果您发现本文排版有问题,可以先点击下面的链接切换至老版进行查看!!!在java.lang包中有String.split()方法的原型是: p ...

  3. java生成水印_[转载]java操作word生成水印

    应用场景 为了保护版权或辨别文件的真伪,有时需要在生成的Word文件中动态添加水印,PageOffice组件的WaterMark类就封装了给在线编辑的Word文件添加水印这一功能,调用接口非常简单. ...

  4. java shape 空间操作类_设计三个类:几何形状类(Shape)、圆类(Circle)、矩形类(.,请编写 Java程序,设计一个“形状rdquo...

    问题标题 设计三个类:几何形状类(Shape).圆类(Circle).矩形类(.,请编写 Java程序,设计一个"形状&rdquo 2019-5-10来自ip:17.175.174. ...

  5. java设计一个user类_关于JAVA设计一个用户类

    关于JAVA设计一个用户类 关注:152  答案:2  mip版 解决时间 2021-02-02 05:51 提问者安分守己的小青春 2021-02-02 02:23 设计一个用户类,该类有用户编号. ...

  6. java 员工类算工资_用java设计一个员工类,可以计算工资个人所得税

    用java设计一个员工类,可以计算工资个人所得税 1. 背景 老师在课上布置了几道java编程题,此为其中之一 2. 题目内容 设计一个员工类.该员工具有下列私有属性:编号,姓名,基本工资,奖金  提 ...

  7. Java基础 接口实现 设计一个形状类(接口)Shape,方法:求周长和求面积

    题目: 设计一个形状类(接口)Shape,方法:求周长和求面积形状类(接口)的子类(实现类);:Rect(矩形),Circle(圆形)Rect类的子类:Square(正方形)不同的子类会有不同的计算周 ...

  8. java定义一个日期类 包括年 月 日_【说明】 设计一个日期类Date包括年、月、日等私有数据成员。要求实现日期..._考试资料网...

    填空题[说明] 设计一个日期类Date包括年.月.日等私有数据成员.要求实现日期的基本运算,如某日期加上天数.某日期减去天数.两日期相差的天数等. 在Date类中设计如下重载运算符函数: Date o ...

  9. Java黑皮书课后题第9章:9.2(Stock类)遵照9.2节中Cirlce类的例子,设计一个名为Stock的类

    Java黑皮书课后题第9章:9.2(Stock类)遵照9.2节中Cirlce类的例子,设计一个名为Stock的类 题目 代码 Test2 Test2_Stock UML图 题目 代码 Test2:测试 ...

最新文章

  1. 机器学习笔试题精选(一)
  2. 如何写架构说明书(1)
  3. lr不能直接转ps编辑_摄影后期调色软件,Lr软件包
  4. 如何使用Python的Flask和Google App Engine构建网络应用
  5. python中文转拼音不用第三方库_又一个奇葩要求,Python是如何将“中文”转“拼音”的?...
  6. 电商订单ElasticSearch同步解决方案--使用logstash
  7. 获取文件夹中所有文件的文件名[重复]
  8. ACM解题总结——HihoCoder1199 (微软笔试题)
  9. Go官方依赖包管理工具dep的安装及使用
  10. 百度地图点击城市的出现下钻
  11. 云流化方案为水利数字孪生带来哪些新变化?
  12. esc pos命令 java使用_18、ESC/POS指令集在android设备上使用实例(通过socket)
  13. 性能评测方法、各评测项标准总结
  14. react学习经验总结(react安装)
  15. python 使用 turtle 画双心(丘比特之箭)
  16. 吐血推荐 | 珍藏多年的 Chrome 插件,务必收藏
  17. Python基础知识:3、操作列表
  18. KB/s和Kbps是完全不同的概念
  19. 天津市数字经济行业投资策略研究及发展方向建议报告2022-2027年
  20. JAVA笔记- JAVA对象数组的遍历与使用详解

热门文章

  1. 【论文翻译】YOLOv2:YOLO9000_Better, Faster, Stronger
  2. 如何为mysql建立索引
  3. Javascript内置的可迭代对象
  4. Android8 手机配置,安卓8.0即将全面放开,配置再低的手机都能升级了!
  5. 电影《小鞋子》观后感
  6. xamarin Android 截屏,xamarin开发android收集的一些工具
  7. Linux 路由的添加删除-ip route
  8. C盘扩容——根除系统盘空间不足问题
  9. 【JY】超详细的非牛顿流体模型使用方法
  10. 发送邮箱验证码【spring boot】