Я знаю, что лучший способ справиться с инъекцией зависимостей в Scala - это инструменты, которые были созданы специально для языка, но я работаю над проектом, который должен интегрировать некоторые Scala и Java-код.Scala и @Inject аннотация
Затем я использую Google Guice, который реализует спецификацию JSR-330. К счастью, во время интеграции Guice и Scala я не обнаружил никаких проблем. Я использую конструктор-инъектор, потому что мне приходится иметь дело с неизменностью.
Вопрос в том, почему в Scala мы должны использовать обозначение @Inject()
перед параметром конструктора? Почему ()
paranthesis? Ниже приведен пример:
class MyClass @Inject() (val another: AnotherClass) {
// Body of the class
}
Так просто. большое спасибо –