Код с try, finally и двумя return — результат может тебя удивить.
Разбираю ловушку за 30 секунд, чтобы ты не наступил в неё в проде.
#java #джава #backend #программист #javadev #код #айти #разработка
Одна строка x = x++; — и результат совсем не тот, что ты ожидаешь.
Разбираю за 30 секунд — смотри, чтобы не путаться в операторах.
#java #джава #backend #программист #javadeveloper
Крошечный цикл с byte, который выглядит правильно, но работает не так, как ты ждёшь.
Разбираю за 30 секунд — смотри, чтобы не наступить в проде.
Кажется, Optional.of() защитит от NPE. Но если передать в него null, он сам бросит NullPointerException.
of — когда точно не null, ofNullable — когда может быть null.
List String list = Arrays.asList("A", "B", "C");
list.add("D"); — ждёшь добавления, а получаешь исключение.
Всё потому, что возвращается список фиксированного размера (не java.util.ArrayList).
✅ Правильно: обернуть в new ArrayList
Код long micros = 1000 * 60 * 60 * 24 * 30; даёт -1702967296 вместо ожидаемых 2.5 миллиардов.
Всё потому, что умножение идёт в int и переполняется до присвоения в long.
✅ Правильно: поставить L в первом литерале.
#java #джава #backend #программист #javadev #код #разработка
❌ Тернарный оператор + null = ? #java #backend #программирование #javadeveloper #джава #javatutorial
❌ Тернарный оператор + null = ?
Integer result = condition ? 1 : null;
— если condition == false, ждёшь null, а получаешь NullPointerException.
Общий тип тернарного выражения вычисляется как int, и null автоанбоксится → NPE.
✅ Правильно: привести обе ветви к Integer.
Сохрани, чтобы не словить NPE на ровном месте
Удаляешь элемент из списка внутри for-each. Вроде всё правильно, но ловишь ConcurrentModificationException.
✅ Удалять надо через итератор или removeIf.
#java #джава #backend #программист#javadeveloper #разработка
⚠️ Ловушка BigDecimal.equals: 0 ≠ 0.0
equals проверяет и значение, и масштаб. У "0" scale=0, у "0.0" scale=1 → false.
✅ Правильно — compareTo игнорирует масштаб:
new BigDecimal("0").compareTo(new BigDecimal("0.0")) == 0 // true
#java #джава #backend #программист #spring #bigdecimal #javadeveloper #разработка
Integer Cache в Java — вопрос, на котором валятся даже опытные. Разобрал за 30 секунд.
Сохрани, чтобы не потерять, и подпишись!
#java #javaprogramming #javaразработка #полиморфизм #polymorphism #ооп #джава #javacode #программирование #код #javaдляначинающих #javatutorial #программист #разработчик #backend #айти #it #coding #coder #shorts #fyp #рек #обучение #туториал #javadeveloper #javaoop #собеседование #juniordeveloper
Одна строчка кода — и разные методы!
Это полиморфизм в Java. Объяснил за 30 секунд.
Сохрани, чтобы не потерять, и подпишись!
#java #javaprogramming #javaразработка #полиморфизм #polymorphism #ооп #джава #javacode #программирование #код #javaдляначинающих #javatutorial #программист #разработчик #backend #айти #it #coding #coder #shorts #fyp #рек #обучение #туториал #javadeveloper #javaoop #собеседование #juniordeveloper #напальцах
Что такое инкапсуляция в Java?
Разбираю на реальном примере BankAccount: скрытый баланс, публичный deposit с проверкой. За 30 секунд поймёшь, как защищать данные и писать безопасный код.
Подпишись, чтобы выучить Java легко!
#Shorts #Java #инкапсуляцияJava #javaуроки #программирование #ооп #encapsulation #javatutorial #javaforbeginners #javaleadtalks
Наследование в Java за 30 секунд ☕️
extends — это когда один класс получает свойства и методы другого.
Без копипасты, с иерархией и гибкостью
Подпишись, чтобы выучить Java легко!
#Shorts #Java #наследованиеJava #javaуроки #программирование #ооп #extends #javatutorial #javaforbeginners #javaleadtalks
Одна строчка orElse — и ваш пул соединений тает на глазах.
Разобрал проблему и решение за 30 секунд.
Больше разборов и бесплатные курсы:
Telegram: t.me/java_lead_talks
ВКонтакте: vk.com/java_talks
#java #optional #программирование #javadev #shorts #backend #spring
