3978 читали · 2 года назад
Java. Часто возникающие ошибки java.lang.Error
Некоторые из наиболее частых ошибок, которые могут возникнуть при использовании Java, и как их можно исправить. Как исправить ошибки в Java? Исправление ошибок в Java зависит от конкретной проблемы. Некоторые из наиболее распространенных способов исправления ошибок включают: Java является мощным языком программирования, который может использоваться для создания разнообразных приложений и веб-сайтов. Однако, как и любой другой язык программирования, Java также сталкивается с ошибками во время выполнения программы...
1 год назад
Финализаторы и очистители в Java: что это и как работает
Java — это язык программирования, в котором управление памятью в основном возложено на сборщик мусора (Garbage Collector, GC). Однако для дополнительных задач по освобождению ресурсов разработчикам доступны финализаторы (finalizers) и очистители (cleaners). Давайте разберем, что это такое, в чем их разница и как их правильно использовать. Финализатор — это метод finalize(), определенный в классе Object. Он вызывается перед тем, как объект будет удален сборщиком мусора. Пример: public class Resource { @Override protected void finalize() throws Throwable { try { System...
1 неделю назад
Java Records: глубокое погружение и паттерны использования за пределами DTO
Java Records, дебютировавшие как preview в Java 14 и ставшие полноценной фичей в Java 16, произвели революцию в создании классов-носителей данных. Однако большинство разработчиков воспринимают Records лишь как лаконичную замену DTO с автоматическими геттерами, equals/hashCode и toString. Это упущение — настоящий потенциал Records значительно шире. За пределами тривиального использования скрываются возможности для построения типобезопасных конфигураций, реализации бизнес-логики через value objects, создания DSL и даже моделирования state-машин...
764 читали · 2 года назад
Глубокое погружение в Java: рефлексия и загрузчик классов. Часть 1
Источник: Nuances of Programming Парадигмы программирования можно сравнить с территориями. На каждой территории, от императивного до декларативного программирования, установлены строгие законы поведения, диктующие, что можно делать, а что нельзя. Но чаще всего разработчики оказываются на территории, где приходится осуществлять то, что не одобряется или запрещается. В таких случаях начинается поиск лазеек и способов применения системы для решения насущных задач. Иногда обнаруживаются законы, которые разрешают действия, противоречащие основным принципам системы...