Java программирование
159 subscribers
171 photos
16 videos
73 links
Java программирование

Если во только начинаете изучение java, то этот канал для вас.
Download Telegram
Media is too big
VIEW IN TELEGRAM
Java. Многопоточность. Как устроить Deadlock

В данном видео рассказывается о том, что такое Deadlock, и как намеренно создать взаимную блокировку потоков на языке программирования Java.

Исходники GitHub

источник

👉👆
Что такое Optional?

Опциональное значение Optional — это контейнер для объекта, который может содержать или не содержать значение null. Такая обёртка является удобным средством предотвращения NullPointerException, т.к. имеет некоторые функции высшего порядка, избавляющие от добавления повторяющихся if null/notNull проверок:

Optional<String> optional = Optional.of("hello");

optional.isPresent(); // true
optional.ifPresent(s -> System.out.println(s.length())); // 5
optional.get(); // "hello"
optional.orElse("ops..."); // "hello"


👉👆
Заваривайте чашку кофе и встречайте JPoint — крупнейшее событие в России, посвященное Java-разработке. 

В программе технические доклады от спикеров из топовых компаний, личный опыт, боль и много кода. Работа с БД на примере Spring Boot-придолжений, устройство и работа Consumer, Java для мобильных приложений, тайны паттерна DTO — и это только малая часть программы.

Кроме технической конкретики, которой немало, будут и более «софт-скилльные» доклады. Например, Дмитрий Иванов и Андрей Кулешов из Huawei расскажут про пирамиду потребностей Маслоу для Java/Kotlin-разработчика. А для самых любознательных организаторы подготовили кейноуты Натальи Зубаревич и Станислава Дробышевского.

JPoint — это возможность пообщаться с коллегами из разных компаний, познакомится с ветеранами Спринга, увидеть новые лица Java-мира и просто хорошо провести время.

Если билет вам покупает работодатель, то пришлите ему эту ссылку.
Если идете за свой счет, то ищите билеты здесь. По промокоду BOOKJAVA они будут еще дешевле.
Где и как вы можете использовать приватный конструктор?

Приватный (помеченный ключевым словом private, скрытый) конструктор может использоваться публичным статическим методом генерации объектов данного класса. Также доступ к нему разрешён вложенным классам и может использоваться для их нужд.

#вопросы_с_собеседований
Для детей
Самый дефолтный сок
Для чего используются ключевые слова volatile, synchronized, transient, native?

volatile вынуждает потоки отключить оптимизацию доступа и использовать единственный экземпляр переменной. Если переменная примитивного типа – этого будет достаточно для обеспечения потокобезопасности. Если же переменная является ссылкой на объект – синхронизировано будет исключительно значение этой ссылки. Все данные, содержащиеся в объекте, синхронизированы не будут!

synchronized — это зарезервированное слово позволяет добиваться синхронизации в помеченных им методах или блоках кода.

Ключевые слова transient и native к многопоточности никакого отношения не имеют, первое используется для указания полей класса, которые не нужно сериализовать, а второе сигнализирует о том, что метод реализован в платформо-зависимом коде.

👉👆
🔥Где получить начальные знания по Java-разработке?

23 марта в 20:00 для начинающих Java-разработчиков на открытом уроке в OTUS разберем основы UML. Занятие приурочено к старту специализации «Java Developer».

⚡️На занятии мы:

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

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

👉Регистрируйтесь на занятие:
https://otus.pw/hgtF/
Spring 5 Recipes: A Problem-Solution Approach

Автор: Marten Deinum, Daniel Rubio, Josh Long
Год издания: 2017

#spring #java

Скачать книгу
Media is too big
VIEW IN TELEGRAM
Java. Шифруем данные для открытой передачи

Шифруем текст с использованием ключа данные для открытой передачи в GET для разных ситуаций. Не использовал secure библиотеки - по каким-то известным только мне тогдашнему причинам.

Если не охота заморачиватья с шифрованием - из комментария подписчика @Александр Плохой: Cipher.getInstance("AES").init(ENCRYPT_MODE, key);

(опять не прицепились маркеры - дублирую в описани)
00:00 Вступление и обоснования
02:00 Личный опыт
04:00 Spring
08:00 Библиотека символов
12:00 Encrypt
18:00 Decrypt
19:00 Test
23:00 Разбор на пальцах

Source: https://github.com/azim-ut/encrypt

источник

👉👆
Полное руководство по switch в Java

Старый добрый switch был в Java с первого дня. Мы все используем его и привыкли к нему — особенно к его причудам (кого‑нибудь еще раздражает break?). Но начиная с Java 12, ситуация начала меняться: switch вместо оператора стал выражением:

boolean result = switch(ternaryBool) {
case TRUE -> true;
case FALSE -> false;
case FILE_NOT_FOUND -> throw new UncheckedIOException(
"This is ridiculous!",
new FileNotFoundException());
default -> throw new IllegalArgumentException("Seriously?!");
}


https://habr.com/ru/post/724186/

👉👆