如何检查对象是否已在Java中创建/调用?(Eclipse IDE)

如何检查对象是否已在Java中创建/调用?(Eclipse IDE),java,eclipse,object,Java,Eclipse,Object,假设我正在制作一个游戏,在每秒循环数百次的渲染方法中,我有两行代码,例如 Sprite sprite = new Sprite (...); screen.renderSprite(...); 它创建一个对象并将其渲染到屏幕上,以便显示。但是假设它没有显示出来;如果没有错误,那么它就不会被调用,这是很自然的 那么在Eclipse中,我如何检查这两行代码是否在x行中被调用?如果您告诉我使用断点,请一步一步地告诉我,因为我觉得这只会混淆渲染方法。(?)我想检查对象是否已创建和使用 如果你需要更多

假设我正在制作一个游戏,在每秒循环数百次的渲染方法中,我有两行代码,例如

Sprite sprite = new Sprite (...);
screen.renderSprite(...);
它创建一个对象并将其渲染到屏幕上,以便显示。但是假设它没有显示出来;如果没有错误,那么它就不会被调用,这是很自然的

那么在Eclipse中,我如何检查这两行代码是否在x行中被调用?如果您告诉我使用断点,请一步一步地告诉我,因为我觉得这只会混淆渲染方法。(?)我想检查对象是否已创建和使用


如果你需要更多的信息,请毫不犹豫地询问

11. Sprite sprite = new Sprite (...);
12. screen.renderSprite(...);
  • 右键单击第12行(在我的示例中,但在代码中会有所不同)
  • 单击切换断点
  • 单击Run>Debug作为启动配置,然后选择Java应用程序或现有启动配置

  • 一旦代码启动并进入
    屏幕。renderSprite
    ,程序将停止,您将能够检查它。

    首先,您必须在代码中识别一些行,您知道您的sprite没有渲染(可能是状态标志?)

    因此,您有两个选择:

    >P>如果您维护方法的源代码<强>>ReDelpScript(…)<强>,您应该考虑使用记录器(类似于它应该已经包含在Eclipse IDE的插件中)。因此,应用程序不会混淆渲染过程

  • 另一个选项是调试:设置一个断点(双击上述行的左侧),并在调试模式下运行应用程序。您还可以设置仅在某些情况下停止断点的条件。因此,您必须右键单击断点并选择“断点属性…”并选中“条件”-框。在下面的文本字段中,您可以用Java定义您的条件(您可以像在编辑器中一样访问所有变量)。有关更多信息,请参阅或。通过调试,渲染将暂停,但您应该更容易找到问题的具体根源


  • 设置了断点的行(其字节码已执行)将在断点图像上有一个小复选标记。

    在这种情况下,我将使用记录器模数运算符有助于减少日志或调试打印中的大量信息。在字段中,计算调用代码的次数。然后,只在(0==(计数%n))时记录计数,例如,其中n是100或1000…使用Mockito会有帮助吗?在我看来,您希望您的游戏能够报告是否在某个时间点渲染了类型为“X/Y”(例如:精灵/玩家)的实体。这意味着你可以让你的游戏以某种方式为你保留这种运行时信息。OP知道断点。问题是,面对“每秒数百次”的呼叫,该怎么办