Для чего используются ключевые слова 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/
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
Скачать книгу
Автор: 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
источник
👉👆
Шифруем текст с использованием ключа данные для открытой передачи в 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 вместо оператора стал выражением:
https://habr.com/ru/post/724186/
👉👆
Старый добрый 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/
👉👆
Вышла Java 20
Вышла общедоступная версия Java 20. В этот релиз попало около 1500 закрытых задач и 7 JEP'ов. Release Notes можно посмотреть здесь. Изменения API – здесь.
Ссылки на скачивание:
Oracle JDK
OpenJDK
👉👆
Вышла общедоступная версия Java 20. В этот релиз попало около 1500 закрытых задач и 7 JEP'ов. Release Notes можно посмотреть здесь. Изменения API – здесь.
Ссылки на скачивание:
Oracle JDK
OpenJDK
👉👆
Тинькофф бросает вызов бэкенд-разработчикам!
15 апреля стартует IT's Tinkoff Solution Cup — соревнование для мидлов и сеньоров. Будут сложные задачи и призы победителям.
Регистрируйтесь, проходите отборочный тур и побеждайте в финале 22 апреля. Детали тут: https://l.tinkoff.ru/cup-solution
15 апреля стартует IT's Tinkoff Solution Cup — соревнование для мидлов и сеньоров. Будут сложные задачи и призы победителям.
Регистрируйтесь, проходите отборочный тур и побеждайте в финале 22 апреля. Детали тут: https://l.tinkoff.ru/cup-solution
Fastjson - это библиотека Java, которую можно использовать для преобразования Java-объектов в их JSON-представление. Она также может быть использована для преобразования строки JSON в эквивалентный объект Java. Fastjson может работать с произвольными Java-объектами, включая уже существующие объекты, исходный код которых у вас отсутствует.
https://github.com/alibaba/fastjson
👉👆
https://github.com/alibaba/fastjson
👉👆