microJUG – Telegram
microJUG
981 subscribers
155 photos
1 video
2 files
237 links
Мысли о Java.
Основной канал: @miniJUG
Буст: https://news.1rj.ru/str/microJUG?boost
Чат: https://news.1rj.ru/str/micro_JUG
Таблица JEP'ов: https://minijug.org/jeps.html
Download Telegram
Value-типы хотят переименовать во второй раз🤦‍♂️. Теперь это будут не inline-типы, а примитивные типы.
#valhalla
Какой вариант сравнения nullable переменной с константой вы предпочитаете?
Final Results
11%
if (nullable != null && nullable.equals(CONST))
66%
if (CONST.equals(nullable))
22%
if (Objects.equals(nullable, CONST))
1%
Свой вариант (напишу в комментариях)
Inline-типы должны скаляризоваться. Но только в C2. И если там не интерфейс. И вообще это не точно.
#valhalla
microJUG
Shenandoah попадёт в JDK 11.0.9. Релиз выйдет 20 октября 2020 года. #shenandoah
Походу, они обосрались, и не включили Shenandoah в AdoptOpenJDK 11.0.9.
P.S. Shenandoah есть в Azul Zulu и, само собой, в редхатовской сборке.
#shenandoah
Когда ночью случайно переключился в IDE на светлую тему
#юмор
😁1
Как позвать protected метод у класса в чужом пакете? Ловите простой трюк. Просто переопределяем метод в анонимном классе, и сразу же вызываем его на этом объекте:

new ClassWithProtectedMethod() {
@Override
protected void method() {
super.method();
}
}.method();

Заметьте, что метод даже не пришлось делать public.
В Java 16 появится метод Stream.toList(), который позволит конвертировать Stream в список. Сейчас это можно сделать с помощью Stream.collect(Collectors.toList()) и Stream.collect(Collectors.toUnmodifiableList()), однако toList() будет не только короче, но и эффективнее, поскольку не будет создавать никаких промежуточных массивов.

Кроме того, между всеми тремя способами есть различия:

collect(Collectors.toList()) не гарантирует неизменяемость, позволяет нули (по факту возвращает ArrayList)
collect(Collectors.toUnmodifiableList()) гарантирует неизменяемость, не позволяет нули
toList() гарантирует неизменяемость, позволяет нули (по факту возвращает неизменяемый список)
#java16 #stream
В сборщике мусора Shenandoah появится конкурентная обработка слабых ссылок (в т.ч. финализаторов). Это значит, что теперь использование слабых ссылок и finalize() не будет влиять на паузы GC. Изменение попадёт в Java 16.
#shenandoah #java16
This media is not supported in your browser
VIEW IN TELEGRAM
Когда проверяешь, как там поживает твой билд, и радуешься, что пока не упало ни одного теста
#юмор
Бреслав всё
#kotlin
Ух ты, в IntelliJ IDEA появился встроенный калькулятор
#IntelliJIDEA
Вышли экспериментальные сборки IntelliJ IDEA под Apple M1 (ссылка)
#IntelliJIDEA #applem1
Какую сборку JDK вы используете? (можно отмечать несколько)
#опрос
Final Results
42%
Oracle OpenJDK (jdk.java.net)
33%
AdoptOpenJDK (adoptopenjdk.net)
2%
Debian OpenJDK (debian.org)
14%
Liberica JDK (bell-sw.com)
6%
Red Hat OpenJDK (redhat.com)
10%
Azul Zulu (azul.com)
2%
IBM J9 / OpenJ9 (ibm.com)
6%
Amazon Corretto (amazon.com)
3%
Другое (напишу в комментах)
Новость месячной давности, но всё же. Microsoft (совместно с Azul) выпустил первый EA билд порта OpenJDK под Apple M1. Да-да, Microsoft. Под Apple.
На вопрос, зачем им это нужно, продуктовый менеджер сказал, что многие разработчики в Microsoft работают на маках, и скоро они будут обновляться на новые макбуки 😄.
#microsoft #applem1