Java Books
14.3K subscribers
207 photos
13 videos
269 files
267 links
Java Библиотека

По всем вопросам- @notxxx1

@ai_machinelearning_big_data - machine learning

@pythonl - Python

@itchannels_telegram - 🔥 best it channels

@ArtificialIntelligencedl - AI

@pythonlbooks-📚

@programming_books_it -it 📚

№ 5032728887
Download Telegram
🔥 Полезная подборка каналов только код, практика и самые передовые инструменты, которые используют разработчики прямо сейчас.👇

🖥 ИИ: t.me/ai_machinelearning_big_data

🖥 Python: t.me/pythonl

🖥 Linux: t.me/linuxacademiya

🖥 C++ t.me/cpluspluc

🖥 Docker: t.me/DevopsDocker

🖥 Хакинг: t.me/linuxkalii

🖥 Devops: t.me/DevOPSitsec

👣 Golang: t.me/Golang_google

🖥 Аналитика: t.me/data_analysis_ml

🖥 Javascript: t.me/javascriptv

🖥 C#: t.me/csharp_ci

🖥 Java: t.me/javatg

🖥 Базы данных: t.me/sqlhub

👣 Rust: t.me/rust_code

🤖 Технологии: t.me/vistehno

💰 Экономика и инвестиции в ИИ t.me/financeStable

💼 Актуальные вакансии: t.me/addlist/_zyy_jQ_QUsyM2Vi


🖥Подборка по Golang: https://t.me/addlist/MUtJEeJSxeY2YTFi
⚡️ Лучшие ИИ ресурсы: https://t.me/addlist/2Ls-snqEeytkMDgy

Max ИИ: https://max.ru/ai_machinelearning_big_data
Max Ml: https://max.ru/vistehno
Max python: https://max.ru/pythonl
Max Go: https://max.ru/Golang_google
Max Linux: https://max.ru/linuxkalii
Max Java: https://max.ru/javatg
Max Sql: https://max.ru/sqlhub
Max Devops: https://max.ru/DevOPSitsec
Анализ данных: https://max.ru/data_analysis_ml
C++ : https://max.ru/cpluspluc
C#: https://max.ru/csharp_ci

🖥 Chatgpt бот в тг: t.me/Chatgpturbobot
📚 Бесплатные ит-книги: https://t.me/addlist/HwywK4fErd8wYzQy
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥2
Forwarded from Java
🚀 Java 26 стала умнее — особенно в pattern matching

Теперь работа с pattern matching выражениями стала заметно стабильнее и предсказуемее

Что улучшили:

🟢 Более надёжный type inference
компилятор лучше понимает типы в сложных условиях

🟢 Меньше edge-case ошибок
меньше неожиданных падений и предупреждений

🟢 Консистентное поведение
одинаковая логика в if и switch

Что это даёт на практике:

раньше при усложнении условий
компилятор мог “теряться”

теперь:
- анализ потока стал умнее
- переменные из pattern matching корректно распознаются
- код становится чище и безопаснее

Java становится всё ближе к современным языкам
с удобным и предсказуемым контролем типов

#Java #JavaDev

⚡️ Полезные ресурсы по Java 🚀 Max

@javatg
5👍1🔥1
🚀 Spring Boot: не делай эту ошибку с filters / interceptors

Многие используют фильтры и интерцепторы неправильно 👇

👉 Они должны быть только для cross-cutting задач
(то, что применяется ко ВСЕМ запросам)

Примеры нормального использования:

🟢 Filters:
- CORS
- Encoding

🟢 Interceptors:
- аутентификация / авторизация
- метрики / логирование
- locale
- общие headers

Главная ошибка:

кладут туда бизнес-логику

Например:
- запрос в БД
- проверка подписки
- сложная логика

Почему это плохо:

- выполняется на КАЖДЫЙ запрос
- создаёт лишнюю нагрузку
- ломает архитектуру
- усложняет тестирование

📉 Итог:

interceptor превращается в «мусорный слой»

💡 Как правильно:

- бизнес-логика → в сервисах
- контроллеры → orchestration

⚡️ Полезные ресурсы по Java 🚀 Max
6👍5🔥3
🧠 Можно ли переопределить getClass() в Java?

Нет, нельзя.
Метод getClass() в java.lang.Object объявлен так:


public final native Class<?> getClass();


📌 Почему:

- final — запрещает переопределение в наследниках.
- native — реализован в JVM, а не на Java.
- Гарантирует, что при вызове obj.getClass() всегда вернётся реальный класс объекта, без подмен и сюрпризов.

💡 Если хотите вернуть “свой” тип, делайте отдельный метод:


class MyClass {
public String getTypeName() {
return "CustomType";
}
}


⚠️ Переопределяемый getClass() сломал бы рефлексию, сериализацию и кучу системных механизмов. Именно поэтому Java защищает его.

⚡️ Полезные ресурсы по Java 🚀 Max
8👍6🔥2
Приглашаем бэкенд-разработчиков на Week Offer Backend*

Такой формат позволяет пройти секции и финалы за неделю и сразу получить офер. Зарегистрироваться можно до 8 апреля, а сам ивент пройдёт с 11 по 17 апреля, онлайн.

Кого мы ищем:

🟢 Бэкенд-разработчиков c опытом работы от 4 лет на C++, Python, Java/Kotlin, Go**.

🟢 Стажёров-разработчиков c навыком кодинга на C++, Python, Java, Kotlin, Go** и базой по алгоритмам и структурам данных.

🔶 Все подробности, регистрация и материалы для подготовки доступны на сайте: https://yandex.ru/project/events/wo_backend_0426

Приходите создавать полезные продукты для миллионов пользователей!
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥1
🔥 Лучшие БЕСПЛАТНЫЕ ресурсы по Linux в 2026 году

1. Linux Foundation Training
https://training.linuxfoundation.org/training/introduction-to-linux/

2. Linux Journey
https://linuxjourney.com

3. Ubuntu Tutorials
https://ubuntu.com/tutorials

4. Red Hat Training Resources
https://developers.redhat.com/learn

5. Документация GNU
https://gnu.org/manual

6. OverTheWire Bandit (Linux-варгеймы)
https://overthewire.org/wargames

7. Книга The Linux Command Line
https://linuxcommand.org/tlcl.php

8. MIT Missing Semester (Linux и CLI)

https://missing.csail.mit.edu

9. Туториалы по Linux от DigitalOcean
https://digitalocean.com/community/tutorials

10. Linux From Scratch
https://linuxfromscratch.org

11. Arch Linux Wiki
https://wiki.archlinux.org

12. Курс по Linux от freeCodeCamp
https://freecodecamp.org/news/tag/linux

13. Linux Survival (интерактивное обучение)
https://linuxsurvival.com

14. NDG Linux Essentials
https://netacad.com/courses/os-it/ndg-linux-essentials

15. Bash Guide (руководство по Bash)
https://tldp.org/LDP/Bash-Beginners-Guide/html
5
🚀 Java - regex без боли

Нашли интересную библиотеку - Sift. Она заменяет весь этот ад с регулярками на нормальный fluent API.

Теперь вместо нечитаемых строк вида:
^[0-9a-fA-F]{6}$

Пишешь код, который реально понимаешь:
.char('#')
.then()
.exactly(6)
.hexDigits()

📌 Что это дает:
- Читаемый и понятный код
- Меньше ошибок в regex
- Быстрее разработка и поддержка

По сути — это как “переводчик” с языка регулярных выражений на человеческий Java-код.

Если когда-нибудь ломал голову над regex -это прям must-have.

#Java #JavaDev
7👍4
⚡️ Java лайфхак: не убивай производительность боксингом

Многие даже не замечают, как теряют скорость из-за автoboxing в Stream API.

Плохо (создаются объекты Integer):
Stream<Integer> boxed = Stream.of(1, 2, 3, 4, 5);
int sum = boxed.reduce(0, Integer::sum);

Каждое число → объект → лишняя память + нагрузка на GC

Хорошо (работа с примитивами):
int sum = IntStream.of(1, 2, 3, 4, 5).sum();

Без лишних объектов. Быстрее. Чище.

Запомни:
- IntStream → для int
- LongStream → для long
- DoubleStream → для double

Если работаешь с числами — всегда используй primitive streams.

Это мелочь, которая на больших данных превращается в реальную экономию ресурсов.

Сохрани, чтобы не писать медленный код.
👍43🔥2