Каков наилучший способ инициализации сложного статического члена в Java?

Моя цель - иметь приватную статикуProperties объект в моем классе, чтобы действовать как значения по умолчанию при создании другихProperties объекты, необходимые для моего приложения. Текущая реализация выглядит следующим образом:

public class MyClass {
    private static Properties DEFAULT_PROPERTIES = new Properties();

    static {
        try {
           DEFAULT_PROPERTIES.load(
               MyClass.class.getResourceAsStream("myclass.properties"));
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }
 }

Глядя на это, это работает, но это не правильно.

Как бы вы это сделали?

Ответы на вопрос(3)

Ваш ответ на вопрос