Независимо от того, что вы используете, в какой-то момент вам придется создавать экземпляры ваших классов, чтобы использовать их, но нет никакого способа обойти это.
Как это сделать, зависит от того, чего вы хотите достичь, и от семантики этих классов.
Возьмите класс, который вы упомянули с этими полями.
Можно ли прочитать эти поля откуда-нибудь? Файл конфигурации, как пример? Если это так, возможно, все, что вам нужно, это просто конструктор по умолчанию, который инициализирует эти поля из такого файла конфигурации.
Однако, если содержимое этих полей действительно необходимо передать из внешнего мира, то нет никакого способа обойти это.
Возможно, вам стоит взглянуть на контейнер IoC и внедрение зависимостей?