169 похожих чатов

А в чем смысл будет sealed interface?

21 ответов

8 просмотров

Ну там два смысла. Один в том, что можно наследовать наследника силед класса от кого-то еще. А в по пропозалу дополнительно можно будет не в одном файле все объявлять

Ну такой же, как и у sealed class примерно: точно известен список прямых наследников.

Andrey Antipov
Ну такой же, как и у sealed class примерно: точно ...

То есть фактически сумм-типы, только кривые, потому что на JVM по другому нельзя

Антон 🇦🇲
То есть фактически сумм-типы, только кривые, потом...

Давайте сначала доку почитаем, потом пропозал, а потом набрасывать

Антон 🇦🇲
То есть фактически сумм-типы, только кривые, потом...

Вот честно, не понимаю, как устройство байт-код стэк машины мешает реализовать ту или иную систему типов на этапе компиляции.

sealed class, но можно ещё от кого-то наследоваться

Andrey Antipov
Вот честно, не понимаю, как устройство байт-код ст...

Библиотеки скомпилированные могут быть. И все ограничения на наследование к ним должны применяться по максимуму при взаимодействии с ними.

Dmitry
Библиотеки скомпилированные могут быть. И все огра...

Опять же, на что это влияет? У JVM байт кода достаточно средств для выставления на скомпилированном коде самых разнообразных меток для воссоздания того, как это выглядит в таргет языке с точки зрения интерфейса взаимодействия.

Andrey Antipov
Опять же, на что это влияет? У JVM байт кода доста...

А как это будет в джаве выглядеть? Всё-таки котлин позиционируется как язык, у которого интероп в обе стороны работает. Но, конечно, с текущими инлайн-классами он начал съезжать с этой дороги.

Vladimir Petraković
А как это будет в джаве выглядеть? Всё-таки котлин...

Ну часть ограничений просто в джаве не будет работать. Так же, как сейчас нуллабельность в джаве не проверяется.

Andrey Antipov
Ну часть ограничений просто в джаве не будет работ...

Ну проверять значения на входе на null заметно проще, чем на соответствие множеству типов

Alexander Nozik
Ну там два смысла. Один в том, что можно наследова...

Это уже точная информация? Может тогда и классы можно будет в разных файлах объявлять?

Konstantin Dovnar
Это уже точная информация? Может тогда и классы мо...

ну это мелочь, честно говоря. но вот сами sealed interface - это важная фича

Iaroslav Postovalov
а зачем?

Мне банально не нравится объявлять кучу классов в одном файле.

Konstantin Dovnar
Это уже точная информация? Может тогда и классы мо...

Да, для них там, написано: "Restrictions on placement of subclasses of a sealed class are relaxed to match those of the sealed interface above, which are repeated below for completeness." Вообще кип недлинный, можно целиком прочитать.

Похожие вопросы

Обсуждают сегодня

Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
55
Я тут за тем, чтобы задать вопрос, так как не знаю ассемблер, учу с/с++. Короче, насколько дорога операция перехода в функцию при ее вызове? Дело в том, что в с++ есть макросы...
Максим Рябцев
11
hello friends. Do you know how can I learn getx? I have a software project that I should deliver it up to 5 weeks later and I need to learn firebase too. I will be thankfull
AmirHossein Razavi
15
Доброе время суток! у меня тут иноды закончились. и понял почему по сути кстит, я периодически очищаю постгрес и сентри контайнер: postgres=# DELETE FROM nodestore_node WHER...
Юсиф Насиров
9
Привет, нужен совет старших товарищей. Есть глобальная переменная var DefaultDataFolder:string; инициализируем DefaultDataFolder:='a:\_OUT\'; есть примитивная процедур...
Max Otto
14
lazarus-3.2.0/gtk, linux патч "имя проекта по умолчанию project1 -> prj" день добрый не нравится "именя проекта по умолчанию" (project1), к.раз приходится переименовывать (н...
livontiy
5
Вопрос. Теоретический. Есть список команд. Команды отправляю в обработку некой функции, по очереди. Разные команды могут давать разные результаты после обработки. В зависимос...
Serjone
7
Коллеги, а в чём сейчас хорошо писать на перле, в смысле ide? Пробовал в идее с плагином, подсветка есть, даже какие-то предупреждения есть, но рефакторинга считай нет. Перене...
Дмитрий Петров
9
Can I forward ports (including the SSH port) between two machines without SSH? I know I can forward SSH server port from machine A (which blocks all requests by firewall) to ...
required optional
5
Всем вечера. Подскажите как лучше сделать. делаю на Д10 Например будет база данных на SQLite. в ней будет много таблиц. более 50шт Типа справочник. Содержать ID Name Id p...
Андрей Т 🐎
10
Карта сайта