Спасибо Хольгер за эту подробную разработку!

тоящее время я генерирую некоторый код ASM в задаче компиляции Maven. В Java 6 была представлена StackMapTable, представляющая типы данных в стеке, что является обязательным в более поздних версиях. Таким образом, я автоматически определяю наиболее конкретный класс, который может быть в стеке. Теперь я столкнулся с проблемой, заключающейся в том, что в моей виртуальной машине ThaiBuddhistDate и HijrahDate наследуются от ChronoLocalDateImpl, поэтому он создает этот тип в StackMapTable, что, очевидно, приведет к сбою в других виртуальных машинах (возможно, даже в версиях). Поэтому я подумал, может быть, мне следует изменить расчет на обязательный минимум, что может (теоретически) вызвать аналогичные проблемы для классов и интерфейсов. Сейчас я пытаюсь найти решение для моей проблемы, поэтому я должен выяснить, какие различия могут возникнуть.

Может ли дополнительный класс встречаться только везде в иерархии наследования? Предполагая, что JavaDoc имеет иерархию наследования, такую как:

Объект - Foo - Бар - FooBar

Могу ли я иметь дополнительные классы в структуре наследования везде?

Объект - Баз - Foo - Бар - FooBar

Объект - Foo - Баз - Бар - FooBar

Объект - Foo - Бар - Баз - FooBar

Аналогично для интерфейсов. Могут ли интерфейсы также наследоваться от других интерфейсов, которые не определены в документации, или класс «только» может иметь дополнительные независимые интерфейсы или интерфейсы, которые основаны на определенных или вообще не имеют?

Ответы на вопрос(1)

Ваш ответ на вопрос