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

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