У меня сегодня проблема, потому что я не знаю, как вызвать класс java, который расширяет подкласс. Я знаю, что есть знак $ для вложенного класса, но здесь я потерян.Clojure: вызов подкласса java абстрактного класса
Чтобы быть более ясным, вот классы:
Абстрактный класс:
Подкласс:
Честно говоря, я забыл много о Java, но я вижу, что для подкласса нет конструктора. Проблема в том, что я должен использовать подкласс.
Вот код
(defn apache-logistic-reg [data x0 lamb]
(let [f (Logistic$Parametric.)
start (def-start x0 lamb)
fitter (.create SimpleCurveFitter. f start)
points (double-array (extract-points data))]
(.fit fitter points)))
Проблема заключается в том, что я не могу назвать SimpleCurveFitter. потому что он не имеет конструктора. И AbstractCurveFitter не имеет .create, плюс, если я помню, что абстрактные классы нельзя отличить.
И если я хорошо помню, конструктор SimpleCurveFitter имел бы название своего абстрактного класса, но, возможно, я ошибаюсь.
Как я могу это сделать?
Спасибо Вам
Большое спасибо, наконец, это было «просто», как String, и так далее, я представил себе более сложные манипуляции! –
Третий синтаксис здесь, безусловно, наиболее типичный для вызова статических методов. – amalloy