gpt4 book ai didi

java - 在这种情况下有没有办法完全避免重复代码?

转载 作者:行者123 更新时间:2023-11-30 01:41:35 25 4
gpt4 key购买 nike

我正在使用 Java 开发 android,并且正在实现模型- View -呈现器架构。玩家可以玩两种类型的游戏:

  • 游戏A
  • 游戏B

这两款游戏非常相似,但都有各自的 .class 文档(例如GameA.class 和 GameB.class)。

在这两种情况下,它们各自的演示者是相同的, 唯一改变的是模型类的实例化和声明。例如:

GameAPresenter.class:

class GameAPresenter{

private GameA game;
// other stuff here that happens in both presenters

GameAPresenter(int par1, int par2){
this.game = new GameA(par1, par2);
//other stuff here that happens in both presenters

}
}

GameBPresenter.class:

class GameBPresenter{

private GameB game;
// other stuff here that happens in both presenters

GameBPresenter(int par1, int par2){
this.game = new GameB(par1, par2);
//other stuff here that happens in both presenters

}
}

有什么方法可以完全避免由单行注释模拟的重复代码吗?如果我能让两个模型共享一位演示者,那就太好了。

最佳答案

您需要创建一个通用的 Game 类,然后 GameAGameB 都可以继承该类。

同样可以使用GamePresenter,创建一个GamePresenterAGamePresenterB可以继承的通用模型。此外,每次创建 GamePresenter 的新实例或调用某个方法时,您都可以为 GamePresenter 提供一个 Game。这样就可以有一个 GamePresenter 并且可以使用任何 Game 来呈现它。

关于java - 在这种情况下有没有办法完全避免重复代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59758462/

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