companion-object
У меня есть абстрактный класс: abstract class Vec2t И расширяющийся класс: class Vec2 : Vec2t Vec2t имеет следующий сопутствующий объект : companion object { @JvmField val length = 2 } Но когда я набираю Vec2.length, то он помечается как неразрешенная ссылка... Почему? Чего мне не хватает?...
object ScalaTrueRing { def rule = println("To rule them all") } Этот фрагмент кода будет скомпилирован в байтовый код java, если я декомпилирую его, то эквивалентный код Java будет похож на этот: public final class JavaTrueRing { public static final void rule() { ScalaTrueRing..MODULE$.rule(); ...
в Scala, если я определяю метод, называемый apply в классе или объекте верхнего уровня этот метод будет вызываться всякий раз, когда я добавляю пару скобок к экземпляру этого класса и помещаю соответствующие аргументы для apply() В между ними. Например: class Foo(x: Int) { def apply(y: Int) = { x...