Я создал класс ApplyDemo с частным construtor вприменять метод в классе компаньон не печатает вывод на консоль
class ApplyDemo private{
override def toString()="ApplyDemo"
}
Я создал сопутствующий объект класса, как
object ApplyDemo
{
def apply()={
Console.println("calling Apply");
new ApplyDemo
}
}
Теперь я создал основной класс приложения как:
object MainApp extends App{
val a=ApplyDemo;
Console.println(a);
}
для любопытства куколка Я положил инструкцию println в методе применения. но это не называется. Мне просто интересно узнать, почему println не называется.
P.S. как класс и компаньон в одном файле
Благодаря
Выполнив 'ApplyDemo()' (который вызывает по умолчанию '.Не()' метод) вы должны увидеть вывод 'println'. – bjfletcher
Если у вас нет кода, который вы нам не показали, там нечего называть 'apply' ... –
@bjfltecher: есть ли разница в ApplyDemo() и просто ApplyDemo в этом случае, потому что в scala docs i обнаружили, что мы можем оставить скобки – optional