Java библиотека
31.6K subscribers
2.32K photos
78 videos
8 files
2.05K links
Книги, статьи, мемы и многое другое для Java программиста!

По сотрудничеству и рекламе: @NadikaKir

Канал в перечне РКН: https://vk.cc/cJrT4A

Мы на бирже: https://telega.in/c/javalib/

Сообщество VK https://vk.com/javatutorial
Download Telegram
👩‍💻 Алгоритм Дейкстры на Java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
This media is not supported in your browser
VIEW IN TELEGRAM
Искусственный интеллект создаст коллегу мечты💚

Визуализировать идеальный образ сокомандника поможет нейросеть Kandinsky 2.2. Нужно лишь выбрать профессиональное направление и его навыки. Получившийся результат можно пошерить друзьям.

В реальности крутые коллеги уже ждут вас в Сбере — вместе с масштабными проектами и прогрессивными технологиями. Скорее залетайте на rabota.sber.ru и оставляйте свой отклик!
👍122🔥1
Почему нельзя объявить метод интерфейса с модификатором final?

В случае интерфейсов указание модификатора final бессмысленно, т.к. все методы интерфейсов неявно объявляются как абстрактные, т.е. их невозможно выполнить, не реализовав где-то еще, а этого нельзя будет сделать, если у метода идентификатор final.
👍17🔥3
🔥Путь в Java-разработке с нуля и до Middle за 15 месяцев

Уже 29 декабря стартует новая группа специализации «Java Developer» в OTUS.

💪 С нуля до Middle за 15 месяцев!

На онлайн-курсе вы получите:
✔️ Уникальные знания от преподавателей — Senior Java-разработчиков ведущих IT-компаний.
✔️ Практику создания реальных проектов — разработка своего серверного приложения на Java
✔️ Актуальные навыки, необходимые для трудоустройства Middle Java-разработчиком
✔️ Вы освоите инструменты: IntelliJ IDEA, Java Development Kit (JDK), Spring Framework, Hibernate, PostgreSQL, Apache Maven, Gradle, Docker, Kubernetes, Apache Kafka, RabbitMQ, JUnit, Postman, Jira.

👉 Получить специальные условия на курс можно оставив заявку по ссылке: https://otus.pw/owB2/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8😁4🔥21
Зачем нужны и какие бывают блоки инициализации?

Блоки инициализации представляют собой код, заключенный в фигурные скобки и размещаемый внутри класса вне объявления методов или конструкторов.

• Существуют статические и нестатические блоки инициализации.
• Блок инициализации выполняется перед инициализацией класса загрузчиком классов или созданием объекта класса с помощью конструктора.
• Несколько блоков инициализации выполняются в порядке следования в коде класса.
• Блок инициализации способен генерировать исключения, если их объявления перечислены в throws всех конструкторов класса.
• Блок инициализации возможно создать и в анонимном классе.
👍20🔥71
Forwarded from Java News
Java-инспекции в IDEA 2023.2

Это ретроспективный пост про Java-инспекции IntelliJ IDEA 2023.2, в преддверии 2023.3 (которая сейчас в состоянии Beta 2). Несмотря на то, что эта версия вышла еще в июле, не все в точности помнят, что же там произошло, и какую версию они вообще используют.

А между тем, там не всё хорошо. Например, баги с тэгом
@snippet до сих пор не поправили.

Чтобы самому воспроизвести новости из ченжлога - нужно набирать много кода и проверять их. Это лень, это мы не делаем. Вместо этого, мы смотрим этот короткий пост с PNG-картинками, показывающими основные фишки.


Читать статью
👍10🔥3
🔎Хотите узнать об особенных возможностях Scala?

Расскажем на бесплатном открытом уроке «Механизм implicits в Scala» от OTUS и Алексея Воронца – руководителя разработки в NAUMEN.

На вебинаре:
— Познакомимся с историей возникновения и мотивацией компонентов механизма.
— Разберем возможности и опасности implicit-преобразований.
— Узнаем, как и для чего служат implicit-параметры.
— Рассмотрим правила и требования, по которым Scala ищет подходящего implicit-кандидата.

📢 Занятие пройдёт 30 ноября в 20:00 мск и будет приурочено к старту курса «Scala-разработчик». После урока вы сможете продолжить обучение на специальных условиях.

👉 Для бесплатного участия и получения записи, регистрируйтесь прямо сейчас: регистрация

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
👍4🔥2🎅1
👩‍💻 Авторизация - Spring Security в деталях

Представить себе информационную систему, в которой все пользователи имеют одинаковые неограниченные права практически невозможно - в абсолютном большинстве информационных систем пользователи обладают разными правами, в зависимости от выполняемых задач. Авторизация обеспечивает предоставление полномочий пользователям, а так же проверку их наличия у пользователя при необходимости. В этом ролике автор постарался рассказать, что такое авторизация, какие основные способы её реализации существуют, а так же рассмотрел применение Spring Security для обеспечения авторизованного доступа к HTTP-эндпоинтам и методам.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🔥8
Как разработчику повысить свою ценность в команде?

Расскажем на бесплатном открытом уроке «Механизм implicits в Scala» от OTUS и Алексея Воронца – руководителя разработки в NAUMEN.

На вебинаре:

— Познакомимся с историей возникновения и мотивацией компонентов механизма.
— Разберем возможности и опасности implicit-преобразований.
— Узнаем, как и для чего служат implicit-параметры.
— Рассмотрим правила и требования, по которым Scala ищет подходящего implicit-кандидата.

Занятие пройдёт 30 ноября в 20:00 мск и будет приурочено к старту курса «Scala-разработчик». После урока вы сможете продолжить обучение на специальных условиях.

👉 Для бесплатного участия и получения записи регистрируйтесь прямо сейчас: https://otus.pw/qHjal/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍3🔥2
System.arraycopy

System.arraycopy используется для копирования элементов из одного массива в другой. Этот метод предоставляет эффективный способ копирования данных между массивами. Синтаксис System.arraycopy:

public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)

Параметры метода включают:

src: Исходный массив, из которого вы хотите скопировать элементы.
srcPos: Начальная позиция в исходном массиве, с которой начнется копирование.
dest: Целевой массив, в который вы хотите скопировать элементы.
destPos: Начальная позиция в целевом массиве, куда будут скопированы элементы.
length: Количество элементов, которое вы хотите скопировать.
👍24🔥4
🤔 С чего начать обучение на Java-разработчика?

💡 С бесплатного открытого урока «HashMap под капотом» от OTUS и Михаила Ронжина – старшего Kotlin/Java developer в Tinkoff.

HashMapэто структура данных, представляет собой хэш-таблицу.

На вебинаре мы:
- познакомимся с коллекцией HashMap;
- рассмотрим основные методы;
- узнаем, как она ведет себя под капотом.

📢📢 Занятие пройдёт 5 декабря в 20:00 мск и будет приурочено к старту курса «Специализация Java-разработчик». На нем вы сможете освоить профессию с нуля до уверенного Middle.

👉 Для бесплатного участия и получения записи урока регистрируйтесь прямо сейчас: https://otus.pw/0OJr5/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥21
Узнаем размер памяти компьютера

Для получения информации о памяти компьютера в Java можно использовать класс Runtime.
👍31🔥5
🔊 Как достичь масштабируемости в разработке ПО?

Разберемся на бесплатном открытом уроке «Тактики работы с масштабируемостью» от OTUS.

На вебинаре:
— изучим тактики и их преимущества и недостатки в различных сценариях;
— рассмотрим горизонтальное и вертикальное масштабирование, децентрализованный подход, автоматическое масштабирование и многопоточность;
— разберём принципы разделения функций и микросервисной архитектуры.

Занятие пройдёт 5 декабря в 20:00 мск и будет приурочено к старту курса «Software Architect». Курс возможно приобрести в рассрочку.

👉 Для бесплатного участия пройдите короткое тестирование прямо сейчас 👈

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥2
👩‍💻 Отладка контекста безопасности - Spring Security в деталях

При работе с контекстом безопасности Spring Security иногда возникают ситуации, когда разрабатываемое приложение начинает себя вести не очевидно, отвечать ошибками с HTTP-статусом 403, но без каких-либо подробностей, в том числе и в логах. И в этом случае приходится браться за отладку, о простых способах которой автор расскажет в этом ролике.
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍5🔥2🎉1
🔧В большинстве случаев Gradle используется в командах для довольно несложных задач и только для Kotlin-проектов, java. Между тем, он является очень мощным инструментом разработки для DevOps.

30 ноября в 19.00 (мск) приглашаем на открытый урок курса “Kotlin Backend Developer Professional” в OTUS

📌На уроке обсудим:

- как выполнять сборку проектов, содержащих компоненты на C/C++, Rust, Go и др. языках; 

- как автоматически генерировать исходники с дальнейшей их компиляцией; 

- извлекать файлы из репозиториев для дальнейшей обработки;

- разрабатывать кастомные плагины;

- гибко управлять версиями; 

- собирать докер-образы. 

👉Регистрация для участия https://otus.pw/4za1/?erid=LjN8KNbZN

После урока вы сможете продолжить обучение, поступив в группу курса по специальной цене. Возможны разные способы и рассрочка платежа.

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
👍10🔥2
Что такое механизм try-with-resources?

Данная конструкция, которая появилась в Java 7, позволяет использовать блок try-catch не заботясь о закрытии ресурсов, используемых в данном сегменте кода. Ресурсы объявляются в скобках сразу после try, а компилятор уже сам неявно создаёт секцию finally, в которой и происходит освобождение занятых в блоке ресурсов. Под ресурсами подразумеваются сущности, реализующие интерфейс java.lang.Autocloseable.

Стоит заметить, что блоки catch и явный finally выполняются уже после того, как закрываются ресурсы в неявном finally.
👍22🎉1
Как Android-разработчику повысить квалификацию?

Прийти на практический бесплатный урок «Делаем простейшую имплементацию SDUI» от OTUS и Абакара Магомедова – Android-разработчика в «Альфа-банк».

👩‍💻На вебинаре разберем:

- в чем заключается Server Drvien UI подход;
- его плюсы и минусы;
- что нужно, чтобы реализовать простейшую его реализацию.

Занятие пройдёт 30 ноября в 20:00 мск и будет приурочено к старту курса «Android Developer. Professional». Это отличная возможность совершенно бесплатно протестировать формат обучения и задать преподавателю любые вопросы в режиме реального времени. После урока вы сможете стать студентом курса в рассрочку.

✍️ Для бесплатного участия и получения записи пройдите короткое тестирование прямо сейчас: https://otus.pw/GZIV/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
7👍2🔥2
Что произойдёт, если в блоке инициализации возникнет исключительная ситуация?

Для нестатических блоков инициализации, если выбрасывание исключения прописано явным образом требуется, чтобы объявления этих исключений были перечислены в throws всех конструкторов класса. Иначе будет ошибка компиляции. Для статического блока выбрасывание исключения в явном виде, приводит к ошибке компиляции.

В остальных случаях, взаимодействие с исключениями будет проходить так же, как и в любом другом месте. Класс не будет инициализирован, если ошибка происходит в статическом блоке и объект класса не будет создан, если ошибка возникает в нестатическом блоке.
🔥15👍8
⚡️ Путь сильнейших джавистов ждет тебя!

Пройди тест по Java - проверь, готов ли ты

👩‍💻 Сможешь сдать — пройдёшь на продвинутый курс "Java Developer. Professional" от OTUS по специальной цене.

За 6 месяцев обучения:
- Научишься создавать современные java-приложения
- Поймешь основы функционирования JVM (сборка мусора, byteCode)
- Освоишь приемы применения многопоточности
- Напишешь выпускной проект на любую тему под наставничеством преподавателя

🎫Курс можно приобрести в рассрочку

👉 Пройти тест: https://otus.pw/gf0Q/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2😁1
ListIterator

ListIterator — это интерфейс итератора, предназначенный специально для работы со списками.

В отличие от обычного Iterator, ListIterator позволяет не только итерировать список в прямом направлении, но и в обратном.
Он поддерживает операции для перемещения вперед и назад по списку.

ListIterator реализует методы:
— next(): переход к следующему элементу.
— previous(): переход к предыдущему элементу.
— hasNext(): проверка, есть ли следующий элемент.
— hasPrevious(): проверка, есть ли предыдущий элемент.
— add(): добавление элемента в список.

ListIterator часто используется, когда нужно пройти по списку в обоих направлениях. Например, чтобы сначала обработать элементы в прямом порядке, а затем в обратном. Или чтобы вставить элементы в произвольное место списка.
👍24🔥4