переменная равна нулю, хотя она была установлена - PullRequest
0 голосов
/ 08 сентября 2018

Я создаю несколько объектов, подобных этому:

public class TestThis implements Listener{

    private EventsManager eventsManager;
    private ConfigManager configManager;

    public TestThis() {
        eventsManager = new EventsManager();
        eventsManager.addListener(this);
        configManager = new ConfigManager(this);
    }

    public ConfigManager getConfigManager() {
        return configManager;
    }

    @Override
    public void configLoadedSuccessfully(Event event) {
        System.out.println(this.configManager); //OUTPUT NULL
        System.out.println(this.getConfigManager());//OUTPUT NULL
    }
}

Проблема с объектом configManager. В конструкции все в порядке, но configLoadedSuccessfully событие configManager равно нулю и его значение равно нулю.

Код слушателя:

public interface Listener{
    public void configLoadedSuccessfully(Event event);
}

1 Ответ

0 голосов
/ 08 сентября 2018

Я добавляю функцию, которая запускает загрузку конфигурации и меняет порядок создания var.

    public class TestThis implements Listener{

    private EventsManager eventsManager;
    private ConfigManager configManager;

    public TestThis() {
        eventsManager = new EventsManager();
        configManager = new ConfigManager(this);
        eventsManager.addListener(this);
        configManager.load();
    }

    public ConfigManager getConfigManager() {
        return configManager;
    }

    @Override
    public void configLoadedSuccessfully(Event event) {
        System.out.println(this.configManager);
        System.out.println(this.getConfigManager());
    }
}
...