Конструктор
Vala поддерживает две сильно отличающиеся схемы конструктора: схема в стиле Java/C#, которую мы рассмотрим сейчас и в стиле GObject, которая будет рассмотрена в конце данной главы.
В Vala не поддерживается перегрузка конструктора по той же причине, что и в случае перегрузки методов, что значит класс не может иметь несколько конструкторов с одинаковыми названиями. Однако это не проблема, т.к. Vala поддерживает именованные конструкторы. Если есть необходимость в нескольких конструкторах, вы можете сделать добавления в их именах:
По мне тк это гораздо удобнее чем перегруженный, особенно понятнее становиться документация. + как видно из примера выше становится возможно "перегрузить" конструктор даже с одинаковым набором аргументов
Экземпляры создаются аналогично:
Вы можете собрать конструктор используя this(), или this.name_extension(), например:
Last updated