Логически говоря, чтобы полностью извлечь выгоду из этой новой функции, как она была задумана, вы должны упомянуть ключевые слова «запечатанные» и «разрешения» вместе.
Мой главный вопрос (и последующие вопросы, основанные на ответе на основной вопрос) тогда будет следующим:
- Запечатаны и разрешены ключевые слова, используемые в другом контексте, чем используя их вместе для достижения герметичных типов?
Почему это необходимо? явно упоминать ключевое слово «запечатанное»?
Помогает ли это компилятору быть более эффективным, потому что ключевое слово «запечатанное» появляется первым, и на основе алгоритма компиляции имеет смысл фильтровать классы, имеющие ключевое слово «запечатанное», чтобы оно адаптировало поток компиляции таким образом, чтобы не делать лишних шагов, поскольку она запечатана?
1.2. Если да, то какие?
Пожалуйста, приведите примеры, которые действительно приносят пользу, исключая очевидную часть, где компилятор может иметь дело с классами или интерфейсами, в которых можно только что запечатать ключевое слово без наличия разрешений (что не делает смысл, насколько мне известно).
Я пытался скомпилировать типы, помеченные как запечатанные, но без упоминания разрешений, и это работает, но я не смог найти реальной пользы от этого.
Не оспариваю способ разработки этой функции, просто пытаюсь понять ее причину, поскольку я не смог найти вариант использования, в котором значение «запечатанный» имеет смысл или рекомендуется использовать без ключевого слова «разрешения».
Подробнее здесь: https://stackoverflow.com/questions/790 ... -interface