Здравствуйте, Serginio1, Вы писали:
S>·>На уровне байткода никаких дженериков и делегатов нет, JIT-у пофиг что инлайнить. Компаратор такой же класс, имплементирующий интерфейс, как и всё остальное.
S> В том чиле и метод. Это касается прежде всего int, byte, Int64 где вызов метода 1+1, значительно дольше самого сложения, сравнения
Что "метод"? Имплементировать интерфейс — значит написать имплементацию метода(ов) этого интерфейса. После девиртуализации вызова Comparator.compare станет доступным тело метода для инлайнинга.
S>>> То есть ты сравнивал мобильниках на java 5 и 6 с .Net Native?
S>·>Нет, не сравнивал. Я вообще с мобильниками дела не имею. Но я бы удивился, если бы джава отстала по перформансу.
S> Для мобильных платформ там совсем другие VM.
И что? Они медленнее .net что-ли?
S>>> Угу. Весь мир Андроида сидит на java 5 или как раз с 6.
S>·>Какая разница кто на чём сидит? Комбинации, однако: dotnet vs java 2016-2020.
S> То есть VM для вех версий одна? Да и андроидов разных полно.
Что? Почему? Ты о чём?
S>>>·>И компилятор тоже есть, для особо страждущих. https://www.excelsiorjet.com/
S>>> Еще раз смотрим версию, и вспоминаем на чем народ на Андроид до сих пор сидит
S>·>https://www.excelsior-usa.com/jetdladdon.php?jetversion=700
S> А где Андроид? Мы то говорим про мобильные платформы. .Net Native выгоден прежде всего для мобильных устройств.
Так для андроида ART есть, я же говорил уже, можно тупо локально dex2oat запускать для генерации бинарика.