TGViewer
Channel Public Channel
Java Developer

Java Developer

@java_tg

Авторский канал действующего разработчика — интересные заметки, новые технологии, библиотеки и фреймворки

Сотрудничество: @bape_ads
Прайс: @bape_media

РКН: https://clck.ru/3GHfTK

Реклама на бирже: https://telega.in/c/java_tg
Subscribers
14.8K
Photos
2.2K
Videos
162
Links
2.5K

Showing posts older than #3636 · Back to latest

Older Posts 20 shown
Post #3633 2.89K
❔ Вопрос с собеседования

Какие методы могут находиться в интерфейсе?

Ответ: В интерфейсе можно объявлять несколько типов методов, которые задают контракт и поведение для классов, реализующих этот интерфейс.

▶️ Абстрактные методы — не имеют тела и должны быть реализованы в классе, который реализует интерфейс. Они определяют, какие действия должен поддерживать класс

▶️ Default-методы — содержат реализацию прямо в интерфейсе, класс может их переопределить при необходимости

▶️ Static-методы — принадлежат самому интерфейсу и вызываются без создания экземпляра реализующего класса

▶️ Private-методы — используются внутри интерфейса, помогают избежать дублирования кода в default- и static-методах

Таким образом, интерфейс может не только задавать контракт, но и содержать общую реализацию и вспомогательные методы.


tags: #собеседование

📱 Java Developer  | Чат
  • 👍 15
  • 🔥 4
  • ❤ 2
Post #3631 2.77K
Плотно поработали, можно и отдохнуть теперь

📱 Java Developer | #memes
  • 😁 32
  • ❤ 5
  • 🤣 3
  • 🔥 2
Post #3629 2.92K
👩‍💻 Глубокое погружение в процедуру запуска JVM

В статье подробно разбирается, как JVM запускает программу: от ввода команды и проверки окружения до загрузки классов и выполнения байт-кода.

Автор объясняет ключевые этапы процесса, показывая, что происходит «под капотом» при старте Java-приложения.

⛓ Читать статью

tags: #статья

📱 Java Developer | Чат
  • ❤ 3
  • 🔥 1
Post #3628 3.1K
❔ Вопрос с собеседования

В чём различие между StringBuilder и StringBuffer?

Ответ: Оба класса служат для создания и изменения строк без постоянного пересоздания объектов, как это происходит с String. Их ключевое различие — в потокобезопасности.

StringBuffer — синхронизированный класс. Его методы защищены от одновременного доступа из разных потоков, что делает его безопасным для многопоточной среды. Однако синхронизация снижает производительность, поэтому в однопоточных программах использование StringBuffer неоправданно.

StringBuilder — несинхронизированный аналог. Он не обеспечивает защиту от одновременного доступа, но работает заметно быстрее за счёт отсутствия накладных расходов на синхронизацию. Поэтому его применяют в однопоточных сценариях, где важна скорость.

Проще говоря, StringBuffer — для многопоточности, StringBuilder — для скорости в одном потоке.


tags: #собеседование

📱 Java Developer  | Чат
  • 👍 12
  • 🔥 3
  • ❤ 1
Post #3626 2.89K
Нашёл обходной путь

📱 Java Developer | #memes
  • 😁 37
  • 🤣 15
  • 🔥 4
Post #3624 3.23K
👩‍💻 Паттерны ООП в 10 минутах от вас… Поведенческие шаблоны с примерами на Java

В третьей части цикла автор разбирает поведенческие паттерны ООП на Java — от Chain of Responsibility до Visitor.

Через метафоры и практические примеры он показывает, как управлять поведением объектов, распределять ответственность и строить предсказуемую архитектуру.

⛓ Читать статью

🔖 Предыдущая часть — КЛИК


tags: #статья

📱 Java Developer | Чат
  • ❤ 4
  • 👍 2
  • 🔥 1
Post #3623 2.81K
❔ Вопрос с собеседования

Почему String считается безопасным ключом для HashMap?

Ответ: Объекты класса String в Java неизменяемы — это значит, что после создания их значение не может быть изменено. Это важно, потому что ключ в HashMap должен оставаться стабильным: и хеш, и сравнение не должны меняться со временем.

Кроме того, String кэширует результат hashCode(), что делает доступ к элементам быстрее и стабильнее при многократном использовании. Благодаря этим свойствам String — надёжный и предсказуемый ключ для хеш-таблиц.


tags: #собеседование

📱 Java Developer | Чат
  • ❤ 10
  • 👍 6
  • 🔥 3
  • 👨‍💻 2
  • 🤯 1
Post #3620 3.04K
👩‍💻 Гибкий поиск в Spring Data Elasticsearch

В статье показывается, как в Spring Data Elasticsearch организовать поиск, который понимает запросы с ошибками, склонениями и неполными словами.

Например, чтобы “программирование” находилось по запросам “прога”, “програм”, “pragramirovanie” — подключаются fuzziness, русские стеммеры и настраиваются аналайзеры через Java-конфигурацию.

⛓ Читать статью

tags: #статья

📱 Java Developer | Чат
  • 👍 10
  • ❤ 2
Post #3619 2.71K
❔ Вопрос с собеседования

Что такое класс Assert? Как и зачем его использовать?

Ответ: Класс Assert — это класс в Java, который позволяет проверять утверждения (assertions) и генерировать ошибку AssertionError в случае нарушения этих утверждений.

Assert используется для тестирования кода и обнаружения ошибок во время разработки приложений. Он предоставляет простой способ проверки соблюдения определенных правил и условий в вашем коде, что помогает отлавливать ошибки еще до запуска приложения.

Assert может быть использован для проверки различных условий, таких как проверка диапазона значений, наличия объектов, корректности данных и других правил, которые должны соблюдаться в вашем коде.

Однако, следует использовать Assert осторожно и только для проверки предполагаемых условий, которые не могут быть изменены во время выполнения программы. Важно не злоупотреблять его использованием и не забывать выключать assertions в релизной версии приложения, чтобы не снижать производительность.

tags: #собеседование

📱 Java Developer  | Чат
  • ❤ 7
  • 👍 3
  • 🔥 2
Post #3618 3.19K
Ох уж эти нейроэйчары

📱 Java Developer | #memes
  • 🤣 39
  • ❤ 4
  • 😁 2
Post #3617 3.21K
👩‍💻 Ключевые паттерны системного дизайна

В видео разбираются основные архитектурные паттерны, которые помогают строить надёжные и масштабируемые системы: CQRS, Pub/Sub, Event Sourcing, Circuit Breaker и другие.

Автор объясняет, как и зачем они применяются, с примерами, плюсами и ограничениями каждого подхода.

📱 Смотреть на YouTube

tags: #полезное

📱 Java Developer | Чат
  • 👍 3
  • 🔥 2
  • ❤ 1
Post #3616 2.81K
  • 🤯 12
  • 🔥 5
  • ❤ 2
Post #3615 3.11K
  • 🔥 2
  • ❤ 1
Post #3614 3.42K
Как владельцы Макбуков видят твой Lenovo ThinkPad в модной кофейне:

📱 Java Developer | #memes
  • 🤣 33
  • 😁 6
  • ❤ 4
  • 🔥 2
Post #3613 3.32K
👩‍💻 Kafka для начинающих: работа с брокером сообщений на практике

В статье на практических примерах разбирается работа с Apache Kafka — её устройство, настройка и обмен событиями между сервисами.

На основе Kafka автор создаёт микросервисную систему, где она связывает сервисы заказов, склада, аналитики и уведомлений.

⛓ Читать статью

tags: #статья

📱 Java Developer | Чат
  • 👍 5
  • ❤ 1
  • 🔥 1
Post #3612 2.88K
❔ Вопрос с собеседования

Что будет, если добавлять элементы в TreeSet по возрастанию?

Ответ: TreeSet основан на самобалансирующемся красно-чёрном дереве. Оно автоматически поддерживает баланс, поэтому порядок добавления элементов (по возрастанию, убыванию или случайный) не влияет на производительность операций — они остаются логарифмическими: O(log n) для добавления, поиска и удаления.

tags: #собеседование

📱 Java Developer | Чат
  • ❤ 10
  • 👍 8
  • 🔥 4
  • 🤔 1
Post #3611 2.97K
Вот она, беспроигрышная стратегия

📱 Java Developer | #memes
  • 😁 44
  • 💯 12
  • ❤ 7
  • 🤣 2
Post #3610 3.31K
👩‍💻 Шаблоны и принципы деления кода на классы

В статье объясняется, как правильно делить код на классы, чтобы проект был понятным и расширяемым.

Автор выделяет три их типа — дата-классы, управленцы и исполнители — и на примере показывает, как разнести бизнес-логику, преобразование данных и вычисления по разным ролям.

⛓ Читать статью

tags: #статья

📱 Java Developer | Чат
  • 👍 7
  • ❤ 3
  • 🔥 2
Post #3609 2.71K
  • 😁 21
  • 🏆 4
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →