Я знаю, что программисты должны обернуть свой код в объекте приложения:Имеет ли Scala глобальный объект или класс?
object Hello extends App {
println("Hello, World")
}
Требуется в Eclipse, если я когда-нибудь хочу, чтобы получить какой-либо вывод. Однако, когда я попытался написать код (очень небрежно) в Emacs, я пишу так:
class Pair[+T](val first: T, val second: T)
trait Friend[-T] {
def befriend(someone: T)
}
def makeFriendWith(s: Student, f: Friend[Student]) {
f.befriend(s)
}
Похоже, что нет универсального объекта или класса, который оборачивает над функцией makeFriendWith
. Является ли Scala как JavaScript, все привязано к глобальному объекту? Если нет, к чему эта функция прикреплена?
Кроме того, почему это может работать в консоли (я выполнял команду scala
и работал), но не работает в Eclipse? Какая польза от объекта Application?
Есть ли дополнительная информация об этом объекте пакета? –
Это ответ на вопросы? Я не думал, но, возможно, это только я. –
Я добавил ссылку на документацию объекта пакета. Я считаю их довольно незначительной особенностью языка и редко использую их. –