我想写一个简单的游戏,在这个游戏中,有一个类叫做 Fighter ,并且该类的示例可以攻击其他示例。我想为这个类创建一个示例,它总是被定义的,并且有特殊的属性(我知道怎么做,请不要试图回答这个问题),这样它就可以被用作某种类型的强力玩家。
Fighter
cdmah0mi1#
你可能想要的是:
public class Fighter { public static final Fighter ADMIN_FIGHTER = new Fighter(whatever-args ...);
u4vypkhs2#
你可以这样使用单例模式
public final class AdminFighter { private static final AdminFighter instance = new AdminFighter(); private AdminFighter(){} public static AdminFighter instance() { return instance; } }
所以无论你在项目中的什么地方,你都可以这样使用
AdminFighter constant = AdminFighter.instance();
它总是像常量一样返回同一个adminfighter示例。注意:避免像这个例子那样的全局常量,它们会导致将来的麻烦,而且它们是糟糕设计的标志。有很多博客都在讨论这个问题。
2条答案
按热度按时间cdmah0mi1#
你可能想要的是:
u4vypkhs2#
你可以这样使用单例模式
所以无论你在项目中的什么地方,你都可以这样使用
它总是像常量一样返回同一个adminfighter示例。
注意:避免像这个例子那样的全局常量,它们会导致将来的麻烦,而且它们是糟糕设计的标志。有很多博客都在讨论这个问题。