Scala: различия между версиями

Содержимое удалено Содержимое добавлено
Строка 168:
==Case classes ==
Отличия сase classes от обычных:
*Вы можете использовать распознавание шаблонов по их имени **и** по аргументам конструктора (это очень важно). Обычный класс может быть распознан только по имени - any condition on its members have to be in the guard clause.
*Новые объекты сase class могут быть созданы без ключего слова <tt>new</tt>.
*Все аргументы конструктора доступны извне используя автоматически созданные одноименные функции доступа.
*Метод <tt>toString</tt> автоматически переопределяется так, чтобы печатать имя сase class и все его аргументы.
*Метод <tt>equals</tt> автоматически переопределяется так, чтобы сравнивать два объекта по аргументам конструктора.