Однако я пытаюсь понять влияние время выполнения. В частности:
- Применяет ли JVM (особенно HotSpot) какие-либо специальные оптимизации при обнаружении запечатанного интерфейса по сравнению с обычным незапечатанным интерфейсом?
- Например, активно ли JIT-компилятор использует атрибут PerratedSubclasses для встраивания, девиртуализации или анализ иерархии классов (CHA) более агрессивен или более стабилен?
- Или реальность такова, что запечатанные интерфейсы обеспечивают соблюдение контракта только во время компиляции, а во время выполнения они обрабатываются точно так же, как и любой другой интерфейс (с учетом того же стандартного CHA и стратегий деоптимизации)?
Мобильная версия