Что заменяет переменные класса в scala?

Я использую его при попытке загрузить файл HTML для обработки как объект DOMDocument. Если существуют какие-либо проблемы в HTML... и что веб-сайт не имеет по крайней мере один ... DOMDocument-> loadHTMLFile () бросит ошибку, если Вы не подавите его с. Это - единственный путь (возможно, существуют лучшие), я когда-либо был успешен в создании скребков HTML в PHP.

39
задан Tautvydas 18 December 2016 в 00:36
поделиться

2 ответа

Переменные в сопутствующем объекте:

object Foo{
    private var current = 0
    private def inc = {current += 1; current}
}

class Foo{
    val i = Foo.inc
    println(i)
}
64
ответ дан 27 November 2019 в 02:22
поделиться

Чтобы уточнить ответ Томаса:

Определение объекта обычно помещается в тот же файл с классом, а должен иметь то же имя. В результате получается единственный экземпляр объекта, имеющий имя класса, который содержит все поля, которые вы для него определяете.

Другими словами, удобный конструктор Singleton для самостоятельной работы.

На уровне JVM , определение объекта фактически приводит к определению нового класса; Я думаю, что это то же имя с добавлением $ , например Foo $ . На всякий случай вам нужно совместить некоторые из этих вещей с Java.

25
ответ дан 27 November 2019 в 02:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: