Java Portal | Программирование
Присоединяйтесь к нашему каналу и погрузитесь в мир для Java-разработчика Связь: @devmangx РКН: https://clck.ru/3H4WUg
نمایش بیشتر📈 تحلیل کانال تلگرام Java Portal | Программирование
کانال Java Portal | Программирование (@java_iibrary) در بخش زبانی روسی بازیگری فعال است. در حال حاضر جامعه شامل 11 766 مشترک است و جایگاه 10 270 را در دسته فناوری و برنامهها و رتبه 54 552 را در منطقه روسيا دارد.
📊 شاخصهای مخاطب و پویایی
از زمان ایجاد در невідомо، پروژه رشد سریعی داشته و 11 766 مشترک جذب کرده است.
بر اساس آخرین دادهها در تاریخ 30 اوت, 2026، کانال فعالیت پایداری دارد. در ۳۰ روز گذشته تغییر اعضا برابر -144 و در ۲۴ ساعت گذشته برابر -4 بوده و همچنان دسترسی گستردهای حفظ شده است.
- وضعیت تأیید: تأیید نشده
- نرخ تعامل (ER): میانگین تعامل مخاطب 10.14% است و در ۲۴ ساعت نخست پس از انتشار، محتوا معمولاً 5.80% واکنش نسبت به کل مشترکان کسب میکند.
- دسترسی پستها: هر پست به طور میانگین 1 193 بازدید دریافت میکند. در اولین روز معمولاً 683 بازدید جمعآوری میشود.
- واکنشها و تعامل: مخاطبان بهطور فعال حمایت میکنند؛ میانگین واکنش به هر پست 3 است.
- علایق موضوعی: محتوا بر موضوعات کلیدی مانند boot, string, void, архитектура, resttemplate تمرکز دارد.
📝 توضیح و سیاست محتوایی
نویسنده این فضا را محل بیان دیدگاههای شخصی توصیف میکند:
“Присоединяйтесь к нашему каналу и погрузитесь в мир для Java-разработчика
Связь: @devmangx
РКН: https://clck.ru/3H4WUg”
به لطف بهروزرسانیهای پرتکرار (آخرین داده در تاریخ 31 اوت, 2026)، کانال همواره بهروز و دارای دسترسی بالاست. تحلیلها نشان میدهد مخاطبان بهطور فعال با محتوا تعامل دارند و آن را به نقطه اثرگذاری مهم در دسته فناوری و برنامهها تبدیل کردهاند.
HashMap::newHashMap
Начиная с JDK 19, класс HashMap предоставляет новый фабричный метод:
var map = HashMap.<Key, String>newHashMap(10);В этом примере возвращаемая карта будет достаточно большой, чтобы вместить 10 отображений. У неё значение коэффициента загрузки по умолчанию — 0.75. Поэтому фактическая вместимость (capacity) будет больше, чем переданный аргумент 10. Вместимость вычисляется как:
10 <-- количество отображений
capacity = -----
0.75 <-- коэффициент загрузки
Это отличается от конструктора:
var map = new HashMap<Key, String>(10);В этом случае аргумент 10 — это начальная вместимость (фактическая вместимость будет степенью двойки). Также важно: фабричный метод внутри вызывает конструктор 🔧 Java Portal
EmailNotification:
new EmailNotification(to, subject, body);
Потом появляются другие типы:
⏩SMSNotification
⏩PushNotification
⏩SlackNotification
⏩WhatsAppNotification
Появляется дублирующийся код:
if (type.equals("email")) new EmailNotification(...)
else if (type.equals("sms")) new SMSNotification(...)
...
Проблемы:
—> Повтор кода.
—> Нарушение принципа Open/Closed.
—> Жёсткая связка с классами.
—> Сложно тестировать и расширять.
Как фабрика вас спасает
Вместо создания объектов напрямую или написания switch/if, вы создаёте NotificationFactory
Фабрика:
—> Скрывает логику создания
—> Решает, какой подкласс вернуть
—> Делает основной код чистым и слабо связанным
Теперь вам всё равно, как он создаётся. Вы просто запрашиваете и получаете готовый объект
Пример кода на фото 😊
👉 Java PortalfindAll() — вызывает 1 запрос к авторам + по 1 запросу на книги каждого автора → N+1 запросов
☑JOIN FETCH в @Query — решает проблему, загружая авторов и их книги одним SQL-запросом
Показана разница в коде и как избежать лишних запросов при загрузке связанных сущностей (Author → Book)
👉 Java Portalenum Day {
MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY;
}
⏩Все значения — это константы
⏩Java преобразует их в public static final переменные
Особенности
—> Перечисления (enums) не могут наследовать другие классы, так как уже наследуют java.lang.Enum
—> Не могут реализовывать интерфейсы
—> Конструкторы могут быть только приватными, иначе будет выброшено исключение
Пример Enum с конструктором на фото ☕️
👉 Java Portal | #cтатья<T extends Number>) — позволяют задать верхнюю (или нижнюю) границу для параметра типа.
—> Подстановочные знаки (? extends, ? super) — дают гибкость при работе с обобщёнными методами и коллекциями.
—> Стирание типов (type erasure) — механизм, из-за которого вся информация о типах удаляется во время компиляции, и на этапе выполнения остаются только Object и приведения
🎩
👉 Java Portal⌘⌥L (на macOS) или Ctrl+Alt+L (на Windows/Linux), чтобы отформатировать его согласно настройкам стиля вашего проекта
👉 Java Portal.class — > Выполняется в JVM
.jar — > Упаковка кода для повторного использования
.jmod — >Поддерживает модульные Java-приложения
Native Image — > Нативный образ — > Работает без JVM
.war — >Развёртывание веб-приложений на Java
.ear — > Развёртывание корпоративных Java-приложений
.apk — > Установка Java-приложений на Android
.so — > Компиляция в нативный код (shared object)
👉 Java Portal