我正在开发一款安卓游戏,并且一直在考虑我的主要游戏循环。我的 android java 游戏中的 NPC 类应该有自己的移动功能,还是应该将移动功能移动到游戏类中?选项一和选项二、CPU 负载、编译后的 apk 大小、可维护性等之间是否有任何优势?
我想知道我刚刚写的这两个不同的代码示例中的任何一个是否是“正确”的方式。
SUDO 代码:选项一 - NPC 类有它自己的移动功能
class Game {
Npc npcs[] = new Npc[10];
public Game(){
while(running){
for(loop=0;loop<npcs.count(); loop++){
npcs[loop].move();
}
draw();
}}}
SUDO 代码:选项二 - 移动函数是 Game 类的一部分
class Game {
Npc npcs[] = new Npc[10];
protected moveNPC(){
for(loop=0;loop<npcs.count();loop++){
npcs[loop].x = // change x value
npcs[loop].y = // change y value
}
}
public Game(){
while(running){
moveNPC();
draw();
}}}
最佳答案
在效率或硬件使用方面几乎没有任何差异,因此您应该选择选项一。 NPC
是一个表示一组对象的类,这些对象的行为都封装在 move()
方法中 - 这是一个基本的 OOP 事物。意味着您的选项二方法可行,但从面向对象的角度来看是错误的。希望这会有所帮助。
关于java - NPC类应该有自己的移动功能,还是移动功能属于游戏类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9478125/