Как мне сделать постоянный экземпляр класса в Java? - PullRequest
0 голосов
/ 06 декабря 2018

Я пытаюсь написать простую игру, и в этой игре есть класс с именем Fighter, и экземпляры этого класса могут атаковать другие экземпляры.

Я хочу создать экземпляр этогокласс, который всегда определен и имеет специальные свойства (я знаю, как это сделать, пожалуйста, не пытайтесь на него отвечать), чтобы его можно было использовать в качестве мощного игрока.

Ответы [ 2 ]

0 голосов
/ 06 декабря 2018

вы можете использовать шаблон Singleton как этот

public final class AdminFighter {
   private static final AdminFighter instance = new AdminFighter();
   private AdminFighter(){}
   public static AdminFighter instance() {
       return instance;
   }
}

, поэтому, где бы вы ни находились в проекте, вы можете использовать этот

AdminFighter constant = AdminFighter.instance();

, и это всегда возвращает один и тот же экземпляр AdminFighter какпостоянная

ПРИМЕЧАНИЕ: избегайте глобальных констант, таких как этот пример, они приведут к будущим головным болям и являются признаком плохого дизайна. Тонны постов в блогах обсуждают это .

0 голосов
/ 06 декабря 2018

Что вы, вероятно, хотите, это:

public class Fighter {
    public static final Fighter ADMIN_FIGHTER = new Fighter(whatever-args ...);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...