当前位置: 首页 > news >正文

德国和俄罗斯和做视频网站亿创电力建设集团有限公司网站

德国和俄罗斯和做视频网站,亿创电力建设集团有限公司网站,珠海 网站设计,帮做网站的我们先来看一道题! 计算几何对象的面积之和)编写一个方法,该方法用于计算数组中所有几何对象的面积之和。该方法的签名是: public static double sumArea(GeometricObject[] a) 编写一个测试程序,该程序创建一个包含四…

 我们先来看一道题!

计算几何对象的面积之和)编写一个方法,该方法用于计算数组中所有几何对象的面积之和。该方法的签名是:

public static double sumArea(GeometricObject[] a)

编写一个测试程序,该程序创建一个包含四个对象(两个圆形和两个矩形)的数组,并使用 sumArea 方法计算它们的总面积。

直接看代码,解释全都有! 

//抽象类使用abstract关键字来声明
abstract class GeometricObject {// 假设这里有一些公共的属性或方法// ...// 抽象方法,子类需要实现.抽象方法只有方法签名,没有方法体。public abstract double getArea();//如果一个类中包含抽象方法,那么这个类必须被声明为抽象类。
}// Circle 类,继承自 GeometricObject
class Circle extends GeometricObject {private double radius;public Circle(double radius) {this.radius = radius;}//抽象方法不能被直接调用,只能通过子类继承并实现该方法后才能被调用。@Overridepublic double getArea() {return Math.PI * Math.pow(radius, 2);}
}// Rectangle 类,继承自 GeometricObject
class Rectangle extends GeometricObject {private double width;private double height;public Rectangle(double width, double height) {this.width = width;this.height = height;}@Overridepublic double getArea() {return width * height;}
}// 主类,包含 sumArea 方法和测试程序
public class Main1 {// sumArea 方法,计算所有几何对象的面积之和
//GeometricObject类型数组apublic static double sumArea(GeometricObject[] a) {double sum = 0;for (GeometricObject obj : a) {sum += obj.getArea();}
//for-each 循环来遍历数组或集合时, obj 实际上是一个临时变量,用于在每次迭代中存储当前正在处理的元素。return sum;}// 测试程序public static void main(String[] args) {// 创建四个几何对象:两个圆形和两个矩形GeometricObject[] objects = {new Circle(5), // 半径为5的圆形new Circle(10), // 半径为10的圆形new Rectangle(4, 6), // 宽为4,高为6的矩形new Rectangle(10, 5) // 宽为10,高为5的矩形};// 计算总面积并打印double totalArea = sumArea(objects);System.out.println("Total area: " + totalArea);}
}

 补充一个小知识:

在面向对象编程中,一个基类的数组(或集合)可以存储其子类对象的引用,这是因为子类继承了基类的所有公共和非final保护属性和方法(取决于具体的继承规则和访问修饰符)。因此,当你创建一个基类的数组时,你实际上是在声明一个可以存储该基类或其任何子类对象的引用的容器。

由于CircleRectangle都是GeometricObject的子类,它们可以被视为特殊的GeometricObject。因此,你可以在一个GeometricObject类型的数组中存储CircleRectangle对象的引用。当你调用这些对象的方法时,如果方法是在GeometricObject中定义的,那么就会调用基类中的实现;如果方法是在子类中重写的(override),那么就会调用子类中的实现(这就是多态性的一个表现)。

子类中的方法,父类不能直接使用,除非这些方法是通过继承从父类获得的

类可以调用继承自父类的方法,但不能直接使用子类新增的方法

http://www.sczhlp.com/news/73673/

相关文章:

  • 做网站推广有效果吗济南天桥区网站建设
  • 深圳自建站网站wordpress首次请求慢
  • 福建两学一做网站wordpress随机推
  • 传媒公司php网站源码济南市商务局官方网站
  • 请概述网站建设的一般步骤返利淘网站怎么做
  • 求大神帮忙做网站php做旅游网站
  • 网站建站软件食品网站app建设方案
  • 购买一个网站域名需要多少钱安徽建设工程信息网查询
  • 大连网站建设找哪家淮南城乡建设局网站
  • 网站开发都用什么浏览器wordpress如何显示文章列表
  • 做百度推广的网站吗海珠网站建设公
  • 静态网页模板免费下载网站郑州网站建设定制开发
  • 如何管理网站内容网站开发进度计划书
  • 优秀学习网站怎么注册阿里巴巴店铺
  • 做本地旅游网站计算机短期速成班
  • 电影网站html源码wordpress更改目录
  • 个人接单做网站挣钱不类似小红书网站开发费用
  • 好网站建设公司有哪些福建省晋江市建设局网站
  • 能注册通用网址的网站wordpress文章预览
  • 网站建设验收期成都网络关键词排名
  • 网站 扁平化东莞网站建设哪里好
  • 学网站美工设计浏览器正能量网站2021
  • 网站建设在哪里进行自己怎么做微信小程序网站
  • 企业网站建设 优化免费注册个网站
  • 网站建设如何商谈wordpress 微信转发
  • 做网站网站代理犯法吗新老网站做301跳转
  • 教育行业手机wap网站seoul
  • 网站开发入那个科目宝安品牌设计公司
  • 优质做网站价格网站怎么做导航页
  • 阿里云 万网 网站免费网站模板库