当前位置: 首页 > 知识库问答 >
问题:

从超级类数组传递为子类

公羊向荣
2023-03-14

射弹射弹的数组列表。射弹有两个子类,比如激光。这里我试图将一个投射物传递到另一个函数中。

  void checkProjectiles() {

    for (int index=0; index<Projectiles.size (); index++) {
      if (sq(Projectiles.get(index).xPos - posX) + sq(Projectiles.get(index).yPos - posY) < sq(size)) { //if within the a circle radius of size from centre of roid
        Projectile checkProjectile = Projectiles.get(index);
        collision(checkProjectile);
      }
    }
  }

我的问题是,当将激光的一个实例传递到此函数中时,它不是转到碰撞(激光)而是转到碰撞(投射物)。如何让对象作为其特定子类的实例传递?

共有1个答案

赏梓
2023-03-14

问题是,就程序而言,射弹中的所有内容只能作为射弹来解决,而不能作为其任何子类来解决。有几种方法可以处理这个问题,但我认为最简单的方法是在冲突中处理它。期望得到一个射弹类型的对象,并使用instanceof方法在方法中拆分它。

有关类类型的比较运算符的示例,请参见此答案。检查对象是否属于Java中的类

你应该仔细阅读多态性和接口之类的东西,它们也很有用。

 类似资料:
  • 问题内容: 我有两个组成部分: 第一个是父组件,它是通常的React组件。 第二个是孩子,它是功能组件。 我想将 Titles 的值(处于子状态)传递给父Component。这是我的 子组件 代码: 这是我的 父组件 : 这看起来很容易,但这是我第一次使用功能组件。你能帮我吗 ? 问题答案: React就是关于在组件树中向下流动的数据。如果您希望能够显示和/或修改彼此之间的共享状态,则应提升状态并

  • 问题内容: 我所拥有的是一组表示消息类型的Java类(接近25个)。它们都继承自我想抽象的Message类。每种消息类型都会在Message超类提供的集合中添加一些其他字段。 我正在使用RESTeasy实现一些RESTful Web服务,并希望具有以下方法: 而不是使用25种单独的persist方法,每种方法都针对特定的消息类型进行了量身定制。 目前,我已经为Message类添加了如下注释: 然后

  • 问题内容: 在我正在从事的新项目中,我开始使用组件而不是指令。 但是,我遇到一个无法找到具体标准方法的问题。 从孩子向父母通知事件很容易,您可以在下面的我的plunkr上找到它,但是从父母向孩子通知事件的正确方法是什么? Angular2似乎通过使用以下方法解决了此问题:https ://angular.io/docs/ts/latest/cookbook/component-communicat

  • 问题内容: 通过回调函数将数据从子级传递到父级组件,但是不起作用。我在这里做错了什么?将数据从子级传递到父级组件-反应-通过回调函数 https://codepen.io/silentarrowz/pen/GEMQEP?editors=0010 这是代码 问题答案: 有几个问题。 1)你必须绑定 2)是异步的,因此不能保证在传递给时将其设置为所需的值。你可以做 要么 解决该问题。

  • 嗨,伙计们,我有个小问题。我有这个: 现在我有了另一个类,它生成一个迭代器,并将它的所有对象强制转换为动物对象。