gpt4 book ai didi

java - java中的面向对象设计| Libgdx 方法

转载 作者:行者123 更新时间:2023-12-01 12:48:15 25 4
gpt4 key购买 nike

这个问题相对容易回答,但我真的不知道答案,因为我对 java 或 libgdx 没有真正的经验。

问题:我想知道在 java 中组织代码的最有效方法,我在 php 方面有很强的背景,并且在我的 php 项目中我会使用几个不同的 php 文件(想想看)作为一个类),然后使用 "include 'filename'; or require 'filename'; " 在我的主页中引用它。我会将 header.php、content.php 和 footer.php 完全分开,只引用它。这对我来说是一个非常好的方法,因为它确实使我的代码保持井井有条。

我想知道是否有一种简单的方法可以在 java/libgdx 中做到这一点?我目前正在制作一个 Android 应用程序,您可能知道有生命周期,例如 create();使成为();调整大小();等等

我的想法是将每个周期例如创造();进入一个自己的类并使用 extends在我的主课上。这还能用吗?

感谢各位提前提供的帮助,在一个主类中包含如此多的代码确实让我很烦恼。

最佳答案

这个问题很抽象,你可以阅读很多关于OOP、设计模式和代码样式的书籍或文章,所以我只给出一些实用的提示:

  1. 您可以使用MVC模式。创建三个包 yourpackage.viewyourpackage.modelyourpackage.controller 并按此模型拆分您的类。
  2. 您可以创建包yourpackage.utiles,并将所有仅包含静态方法的类放入其中,这些方法将在您的所有应用中使用。
  3. 不要在一个类中放入太多代码,Java 是非常面向对象的。非常简单的例子:你的游戏有 4 个屏幕。您应该为每个屏幕创建父 Screen 类、4 个 (将从 Screen 扩展)和 ScreenManager 类(将改变屏幕。
  4. 在游戏开发中Singleton是非常有用的模式。您可以将其用于 GraphicMangaer、角色进度保持、dpad Controller 等。

关于你的问题,没有理由将create()方法放入你的类中,构造函数就足够了。您可以做的是在每个绘制某些内容的类中创建 draw() 方法,并将所有绘制逻辑放在那里。然后,您可以在屏幕 render() 方法中调用类的 draw() 方法。

关于java - java中的面向对象设计| Libgdx 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24474988/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com