Сделайте объект, к которому вы хотите получить доступ, статическим.Вы должны прочитать базовый учебник по Java о статическом ключевом слове, потому что его использование может вызвать проблемы, когда вы начнете работать с более сложными темами, такими как потоки и управление памятью.(Статические массивы - это худший .)
Итак, у вас есть класс Util
:
public class Util {
private static Map<String, String> data = new HashMap<>();
// assume you have some logic to populate data
// This method is static, so you don't need an instance of Util to access it
public static Map<String, String> getData() {
return data;
}
}
Статические методы не требуют экземпляра для того, чтобыВы вызываете их против самого класса.
Для доступа к data
в приведенном выше примере из любого места в вашем коде:
Map<String, String> theData = Util.getData(); // called against the class
Вы, конечно, можете создать новыйэкземпляр Util (например, Util myUtil = new Util()
), а затем позвоните myUtil.getData()
- но разницы нет, и ваша IDE предупредит вас, что вы делаете это, если попытаетесь.