Автоупаковка - это механизм неявной инициализации объектов классов-оберток (
☕️ Автоупаковка происходит при прямом присваивании примитива классу-обертке (с помощью оператора =), либо при передаче примитива в параметры метода (типа класса-обертки).
☕️ Автоупаковке в классы-обертки могут быть подвергнуты как переменные примитивных типов, так и константы времени компиляции (литералы и final-примитивы). При этом литералы должны быть синтаксически корректными для инициализации переменной исходного примитивного типа.
☕️ Автоупаковка переменных примитивных типов требует точного соответствия типа исходного примитива типу класса-обертки. Например, попытка упаковать переменную типа byte в Short без предварительного явного приведения byte в short вызовет ошибку компиляции.
☕️ Автоупаковка констант примитивных типов допускает более широкие границы соответствия. В этом случае компилятор способен предварительно осуществлять неявное расширение/сужение типа примитивов:
☕️ неявное расширение/сужение исходного типа примитива до типа примитива, соответствующего классу-обертке (для преобразования int в Byte, сначала компилятор самостоятельно неявно сужает int к byte);
☕️ автоупаковку примитива в соответствующий класс-обертку. Однако в этом случае существуют два дополнительных ограничения: a) присвоение примитива обертке может производится только оператором = (нельзя передать такой примитив в параметры метода без явного приведения типов) b) тип левого операнда не должен быть старше чем Character, тип правого не должен старше, чем int: допустимо расширение/сужение byte в/из short, byte в/из char, short в/из char и только сужение byte из int, short из int, char из int. Все остальные варианты требуют явного приведения типов).
Дополнительной особенностью целочисленных классов-оберток, созданных автоупаковкой констант в диапазоне -128 ... +127 является то, что они кэшируются JVM. Поэтому такие обертки с одинаковыми значениями будут являться ссылками на один объект.
Byte, Short, Integer, Long, Float, Double, Character, Boolean
), значениями соответствующих им исходных примитивных типов (byte, short, int...
), без явного использования конструктора класса.☕️ Автоупаковка происходит при прямом присваивании примитива классу-обертке (с помощью оператора =), либо при передаче примитива в параметры метода (типа класса-обертки).
☕️ Автоупаковке в классы-обертки могут быть подвергнуты как переменные примитивных типов, так и константы времени компиляции (литералы и final-примитивы). При этом литералы должны быть синтаксически корректными для инициализации переменной исходного примитивного типа.
☕️ Автоупаковка переменных примитивных типов требует точного соответствия типа исходного примитива типу класса-обертки. Например, попытка упаковать переменную типа byte в Short без предварительного явного приведения byte в short вызовет ошибку компиляции.
☕️ Автоупаковка констант примитивных типов допускает более широкие границы соответствия. В этом случае компилятор способен предварительно осуществлять неявное расширение/сужение типа примитивов:
☕️ неявное расширение/сужение исходного типа примитива до типа примитива, соответствующего классу-обертке (для преобразования int в Byte, сначала компилятор самостоятельно неявно сужает int к byte);
☕️ автоупаковку примитива в соответствующий класс-обертку. Однако в этом случае существуют два дополнительных ограничения: a) присвоение примитива обертке может производится только оператором = (нельзя передать такой примитив в параметры метода без явного приведения типов) b) тип левого операнда не должен быть старше чем Character, тип правого не должен старше, чем int: допустимо расширение/сужение byte в/из short, byte в/из char, short в/из char и только сужение byte из int, short из int, char из int. Все остальные варианты требуют явного приведения типов).
Дополнительной особенностью целочисленных классов-оберток, созданных автоупаковкой констант в диапазоне -128 ... +127 является то, что они кэшируются JVM. Поэтому такие обертки с одинаковыми значениями будут являться ссылками на один объект.
👍5
Продолжаем следить за вакансиями на российском IT-рынке. Среди интересного: IBS набирает в команду тестировщиков и разработчиков.
Какие тестировщики нужны: инженеры по ручному, автоматизированному и нагрузочному тестированию. Требуется релевантный опыт от года, готовность работать фултайм, развиваться и строить карьеру.
Какие разработчики нужны: миддлы и сеньоры. Никакой работы «в стол» — все проекты уходят в промышленную эксплуатацию. Системы IBS работают в технологичных банках, ритейле и других крупных российских компаниях.
Что дают? Всё, что любим: быстрый рост, прозрачная система грейдов, классное руководство, высокий уровень дохода, соцпакет с ДМС, стоматологией и прочими бенефитами.
Подробнее о вакансиях
Какие тестировщики нужны: инженеры по ручному, автоматизированному и нагрузочному тестированию. Требуется релевантный опыт от года, готовность работать фултайм, развиваться и строить карьеру.
Какие разработчики нужны: миддлы и сеньоры. Никакой работы «в стол» — все проекты уходят в промышленную эксплуатацию. Системы IBS работают в технологичных банках, ритейле и других крупных российских компаниях.
Что дают? Всё, что любим: быстрый рост, прозрачная система грейдов, классное руководство, высокий уровень дохода, соцпакет с ДМС, стоматологией и прочими бенефитами.
Подробнее о вакансиях
Строковый метод equals()
Строковый метод equals() проверяет равенство двух строк в Java. equals() сравнивает содержимое каждой строки.
Если все символы совпадают, метод возвращает значение true. Если же какой-либо символ не совпадает – возвращает false.
Если же требуется сравнение без учета верхнего/нижнего регистров, можно воспользоваться .equalsIgnoreCase() .
Строковый метод equals() проверяет равенство двух строк в Java. equals() сравнивает содержимое каждой строки.
Если все символы совпадают, метод возвращает значение true. Если же какой-либо символ не совпадает – возвращает false.
Если же требуется сравнение без учета верхнего/нижнего регистров, можно воспользоваться .equalsIgnoreCase() .
Напишите потокобезопасную реализацию класса с неблокирующим методом BigInteger next(), который возвращает элементы последовательности: [1, 2, 4, 8, 16, ...].
class PowerOfTwo {
private AtomicReference<BigInteger> current = new AtomicReference<>(null);
BigInteger next() {
BigInteger recent, next;
do {
recent = current.get();
next = (recent == null) ? BigInteger.valueOf(1) : recent.shiftLeft(1);
} while (!current.compareAndSet(recent, next));
return next;
}
}
Jasypt: шифрование конфигурационных файлов spring-boot
В современном мире редко можно встретить приложение, которое не использует в своей работе внешние источники данных, будь то база данных или какой-нибудь сервис. Как правило, подобные внешние источники всегда защищены и требуют, как минимум, базовой аутентификации в виде логина и пароля. Принято логин и пароль хранить в properties файле приложения, но, если вы выложите подобный файл в общее хранилище (на гитхаб, к примеру), его все увидят...
Подробнее
В современном мире редко можно встретить приложение, которое не использует в своей работе внешние источники данных, будь то база данных или какой-нибудь сервис. Как правило, подобные внешние источники всегда защищены и требуют, как минимум, базовой аутентификации в виде логина и пароля. Принято логин и пароль хранить в properties файле приложения, но, если вы выложите подобный файл в общее хранилище (на гитхаб, к примеру), его все увидят...
Подробнее
👍4
Мы запускаем углубленный курс по Java для специалистов с опытом в промышленной разработке. Если вы работали с реляционными базами данных, Java фреймворками или хотите их освоить — добро пожаловать! 💫
Курс бесплатный и длится три месяца. Все занятия онлайн, так что можно проходить из любой точки России.
☝Обучение строится на кейсах из реальной практики. Будут лекции от ведущих разработчиков компании: поговорим про архитектуру и управление командой, расскажем про технологии, которые обеспечивают развитие большой компании.
Чтобы попасть на курс, нужно отправить заявку и сдать вступительные экзамены до 23 февраля. Занятия начнутся в марте. Лучших приглашаем на интервью в одну из команд в штат.
Подробная программа и форма для заявок здесь: https://l.tinkoff.ru/fintech_jvm_2022
Курс бесплатный и длится три месяца. Все занятия онлайн, так что можно проходить из любой точки России.
☝Обучение строится на кейсах из реальной практики. Будут лекции от ведущих разработчиков компании: поговорим про архитектуру и управление командой, расскажем про технологии, которые обеспечивают развитие большой компании.
Чтобы попасть на курс, нужно отправить заявку и сдать вступительные экзамены до 23 февраля. Занятия начнутся в марте. Лучших приглашаем на интервью в одну из команд в штат.
Подробная программа и форма для заявок здесь: https://l.tinkoff.ru/fintech_jvm_2022
👍1👏1
Learn to Program with Kotlin
Автор: Tim Lavers (2021)
Прочитав эту книгу, вы получите практические знания и код, которые помогут вам сразу же приступить к программированию на Kotlin для своих собственных проектов.
Чему вы научитесь
Изучать основы Kotlin с помощью IDE IntelliJ Java
Внедрять ООП с помощью Kotlin, а также модульное тестирование и рефакторинг кода с помощью серии проектов, связанных с текстом
Использовать функциональное программирование на Kotlin, создав библиотеку для обработки изображений.
Напишите программу для поиска и чтения знаков скорости на фотографиях.
Скачать книгу
Автор: Tim Lavers (2021)
Прочитав эту книгу, вы получите практические знания и код, которые помогут вам сразу же приступить к программированию на Kotlin для своих собственных проектов.
Чему вы научитесь
Изучать основы Kotlin с помощью IDE IntelliJ Java
Внедрять ООП с помощью Kotlin, а также модульное тестирование и рефакторинг кода с помощью серии проектов, связанных с текстом
Использовать функциональное программирование на Kotlin, создав библиотеку для обработки изображений.
Напишите программу для поиска и чтения знаков скорости на фотографиях.
Скачать книгу
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Освойте бэкенд-разработку на Java за 10 месяцев!
Профессия для тех, кто настроен серьезно: https://bit.ly/32zzMyP
Научим:
✔️Писать код на Java, использовать фреймворки Javalin, Spring
✔️Применять принципы ООП, работать с базами данным, SQL
✔️Настраивать окружение: IDEA, Gradle/Maven, JDK
✔️Пользоваться командной строкой и Git
Поможем:
✔️Наработать практику — вы сделаете 5 проектов на GitHub
✔️Грамотно оформить резюме
✔️Подготовиться к собеседованиям
А еще порекомендуем в хорошие компании и познакомим с сообществом из 26 тысяч айтишников. Присоединяйтесь!
Профессия для тех, кто настроен серьезно: https://bit.ly/32zzMyP
Научим:
✔️Писать код на Java, использовать фреймворки Javalin, Spring
✔️Применять принципы ООП, работать с базами данным, SQL
✔️Настраивать окружение: IDEA, Gradle/Maven, JDK
✔️Пользоваться командной строкой и Git
Поможем:
✔️Наработать практику — вы сделаете 5 проектов на GitHub
✔️Грамотно оформить резюме
✔️Подготовиться к собеседованиям
А еще порекомендуем в хорошие компании и познакомим с сообществом из 26 тысяч айтишников. Присоединяйтесь!
👍1
Java Programming
Автор: Joyce Farrell (2018)
Даже если вы начинающий программист, книга поможет вам быстро приступить к разработке полезных программ, при этом овладев основными принципами структурного и объектно-ориентированного программирования. Книга содержит уникальные, понятные для читателя объяснения и содержательные упражнения по программированию. Дополнительные цифровые учебные ресурсы в MindTap предоставляют интерактивные инструменты обучения, а также IDE (среда разработки) для отработки и развития ваших навыков.
Скачать книгу
Автор: Joyce Farrell (2018)
Даже если вы начинающий программист, книга поможет вам быстро приступить к разработке полезных программ, при этом овладев основными принципами структурного и объектно-ориентированного программирования. Книга содержит уникальные, понятные для читателя объяснения и содержательные упражнения по программированию. Дополнительные цифровые учебные ресурсы в MindTap предоставляют интерактивные инструменты обучения, а также IDE (среда разработки) для отработки и развития ваших навыков.
Скачать книгу
Java-Cheat-Sheet.pdf
2.5 MB
Шпаргалка по Java (Cheat Sheet)
java-cheat-sheet-comprehensive-guide.pdf
452.5 KB
Java cheat sheet comprehensive guide
Так как строки в Java являются неизменными, то ваш пароль в виде обычного текста будет доступен в памяти, пока сборщик мусора не очистит её. Любое изменение приведет к созданию новой строки.
А вот в случае с char[], вы можете заменить любой его элемент нулем или пустым символом.
А вот в случае с char[], вы можете заменить любой его элемент нулем или пустым символом.
Оплачиваемая стажировка в IT от ЮниКредит Банка с возможностью попасть в штат компании.
Хочешь уже сейчас начать карьеру в IT, получать конкурентную зарплату и бесплатно обучаться у лучших экспертов компании в области работы с данными? Тогда регистрируйся на UniCredit IT Academy - оплачиваемую IT-стажировку для студентов 4-го курса бакалавриата, 1−2-го курса магистратуры и выпускников 2020−2021 годов. Здесь ищут специалистов технического, экономического, математического или IT-направления с базовыми знаниями SQL, английским уровня B1 и выше, готовых посвящать программе от 35 часов в неделю и живущих в Москве и Московской области.
Почему стоит пройти стажировку:
— Быстрый рост и возможность попасть в штат: за 10 месяцев ты станешь специалистом Chief Data Office: пройдешь путь от формирования задачи до ее реализации. А лучшие ученики академии перейдут в штат ЮниКредит Банка.
— Конкурентная зарплата с первого дня обучения. Твои знания конвертируются в деньги: чем выше успеваемость — тем выше оклад.
— Опыт от профи из индустрии: Chief Data Office ЮниКредит Банка и центр обучения SAS поделятся международной экспертизой. Авторская программа обучения от лидеров рынка по двум трекам: аналитика и разработка.
— Развитие новых навыков: Ты прокачаешь hard skills. — Углубишься в SQL, изучишь основы SAS и теорию DWH, а также soft skills — улучшишь навыки нетворкинга, личной эффективности и целеполагания.
— Знания и практика: тебя ждет интенсивное обучение в гибридном формате: и онлайн, и офлайн. Параллельно ты будешь применять полученные знания на практике.
Подавай заявку до 15 февраля включительно: https://clck.ru/asbkA
Хочешь уже сейчас начать карьеру в IT, получать конкурентную зарплату и бесплатно обучаться у лучших экспертов компании в области работы с данными? Тогда регистрируйся на UniCredit IT Academy - оплачиваемую IT-стажировку для студентов 4-го курса бакалавриата, 1−2-го курса магистратуры и выпускников 2020−2021 годов. Здесь ищут специалистов технического, экономического, математического или IT-направления с базовыми знаниями SQL, английским уровня B1 и выше, готовых посвящать программе от 35 часов в неделю и живущих в Москве и Московской области.
Почему стоит пройти стажировку:
— Быстрый рост и возможность попасть в штат: за 10 месяцев ты станешь специалистом Chief Data Office: пройдешь путь от формирования задачи до ее реализации. А лучшие ученики академии перейдут в штат ЮниКредит Банка.
— Конкурентная зарплата с первого дня обучения. Твои знания конвертируются в деньги: чем выше успеваемость — тем выше оклад.
— Опыт от профи из индустрии: Chief Data Office ЮниКредит Банка и центр обучения SAS поделятся международной экспертизой. Авторская программа обучения от лидеров рынка по двум трекам: аналитика и разработка.
— Развитие новых навыков: Ты прокачаешь hard skills. — Углубишься в SQL, изучишь основы SAS и теорию DWH, а также soft skills — улучшишь навыки нетворкинга, личной эффективности и целеполагания.
— Знания и практика: тебя ждет интенсивное обучение в гибридном формате: и онлайн, и офлайн. Параллельно ты будешь применять полученные знания на практике.
Подавай заявку до 15 февраля включительно: https://clck.ru/asbkA
👍1
Мега подборка каналов для программистов 🎯
https://t.me/progjob Вакансии для программистов
Системное администрирование 📌
https://t.me/tipsysdmin Типичный Сисадмин (Админский юмор, фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/linux_sup Новости и информация из мира Linux
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/dev_ops_info Devops
Программирование, фронтенд, Биг дата, мобильная р-ка, книги 📌
https://t.me/game_devv GameDev: разработка игр
https://t.me/Angular_Vuejs Angular Vue js React
https://t.me/frontend_1 Подборки для frontend разработчиков
https://t.me/Frontend_now Все для фронтендеров
https://t.me/react_prog Все что связано с reactjs
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/developer_mobila Мобильная разработка
https://t.me/Welcome_Python Добро пожаловать в мир Python
https://t.me/BookPython Библиотека Python разработчика
https://t.me/programmist_of Книги по программированию
https://t.me/BookJava Библиотека Java разработчика
https://t.me/java_sup Программирование на Java
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
https://t.me/imobile_dev Все по мобильной разработке: iOS, Android
https://t.me/database_group Все про базы данных
https://t.me/cloud_comp Облачные сервисы, вычисления и безопасность
https://t.me/bigdata_world Data Science, Big Data, Machine Learning
IT новости 📌
https://t.me/htech_news Новости HighTech
https://t.me/all_itnews IT новости на английском
https://t.me/gmorning_news Последнии новости из мира науки
https://t.me/youtips_tricks Технологические советы и хитрости
Шутки программистов 📌
https://t.me/dev_jokes Daily Dev Jokes
https://t.me/itumor ITumor | программисты шутят
SMM, Seo, Wordpress 📌
https://t.me/allsocial_news SMM / Советы, Новости, Лайфхаки
https://t.me/seo_go Новости по SEO продвижению сайтов
https://t.me/news_wordpress Канал о самой популярной CMS
Защита, взлом, безопасность 📌
https://t.me/crypto_security_lab Материалы по информационной безопасности
https://t.me/thehaking Канал о кибербезопасности
https://t.me/Hackme_news Новости из мира хакинга
Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров
https://t.me/goodw_design Статьи по Веб дизайну
Должен знать 📌
https://t.me/UchuEnglish Английский с нуля
https://t.me/Pomatematike Канал по математике
Арбитраж трафика 📌
https://t.me/partnerochkin CPA и арбитраж трафика
Крипта 📌
https://t.me/crypto_moneygo Канал о крипте, новости, инсайды
https://t.me/bitkoinoff Нгвости криптовалют
VR, робототехника 📌
https://t.me/AR_VR_vision Компьютерное зрение, виртуальная реальность
https://t.me/robotics_scince Канал о Робототехнике и автоматизации
https://t.me/network_arch Network architecture and Administration
https://t.me/easy_program Программирование для новичков
https://t.me/testin_new Тестирование
https://t.me/IoTprog Интернет вещей
https://t.me/generalprog General programming
https://t.me/Hware_news Цифровые тенденции
https://t.me/progjob Вакансии для программистов
Системное администрирование 📌
https://t.me/tipsysdmin Типичный Сисадмин (Админский юмор, фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/linux_sup Новости и информация из мира Linux
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/dev_ops_info Devops
Программирование, фронтенд, Биг дата, мобильная р-ка, книги 📌
https://t.me/game_devv GameDev: разработка игр
https://t.me/Angular_Vuejs Angular Vue js React
https://t.me/frontend_1 Подборки для frontend разработчиков
https://t.me/Frontend_now Все для фронтендеров
https://t.me/react_prog Все что связано с reactjs
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/developer_mobila Мобильная разработка
https://t.me/Welcome_Python Добро пожаловать в мир Python
https://t.me/BookPython Библиотека Python разработчика
https://t.me/programmist_of Книги по программированию
https://t.me/BookJava Библиотека Java разработчика
https://t.me/java_sup Программирование на Java
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
https://t.me/imobile_dev Все по мобильной разработке: iOS, Android
https://t.me/database_group Все про базы данных
https://t.me/cloud_comp Облачные сервисы, вычисления и безопасность
https://t.me/bigdata_world Data Science, Big Data, Machine Learning
IT новости 📌
https://t.me/htech_news Новости HighTech
https://t.me/all_itnews IT новости на английском
https://t.me/gmorning_news Последнии новости из мира науки
https://t.me/youtips_tricks Технологические советы и хитрости
Шутки программистов 📌
https://t.me/dev_jokes Daily Dev Jokes
https://t.me/itumor ITumor | программисты шутят
SMM, Seo, Wordpress 📌
https://t.me/allsocial_news SMM / Советы, Новости, Лайфхаки
https://t.me/seo_go Новости по SEO продвижению сайтов
https://t.me/news_wordpress Канал о самой популярной CMS
Защита, взлом, безопасность 📌
https://t.me/crypto_security_lab Материалы по информационной безопасности
https://t.me/thehaking Канал о кибербезопасности
https://t.me/Hackme_news Новости из мира хакинга
Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров
https://t.me/goodw_design Статьи по Веб дизайну
Должен знать 📌
https://t.me/UchuEnglish Английский с нуля
https://t.me/Pomatematike Канал по математике
Арбитраж трафика 📌
https://t.me/partnerochkin CPA и арбитраж трафика
Крипта 📌
https://t.me/crypto_moneygo Канал о крипте, новости, инсайды
https://t.me/bitkoinoff Нгвости криптовалют
VR, робототехника 📌
https://t.me/AR_VR_vision Компьютерное зрение, виртуальная реальность
https://t.me/robotics_scince Канал о Робототехнике и автоматизации
https://t.me/network_arch Network architecture and Administration
https://t.me/easy_program Программирование для новичков
https://t.me/testin_new Тестирование
https://t.me/IoTprog Интернет вещей
https://t.me/generalprog General programming
https://t.me/Hware_news Цифровые тенденции
👍2
Многопоточность. Класс CyclicBarrier
В многопоточном программировании часто случаются ситуации, когда поток должен находится в режиме ожидания в определенной точке приложения, пока остальные потоки не достигнут этой точки. Как только нужное количество потоков достигает точки ожидания, то приостановка выполнения потоков снимается и потоки могут вновь продолжить свою работу. На пример, если ряд потоков, каждый из которых выполняет часть общего вычисления и результат их работы должен быть объединен в общий результат. Объединить результат вычисления можно только в том случае, когда все потоки завершат свои маленькие вычисления. Поэтому потоки, которые первые завершили свою работы должны ожидать завершения работы оставшихся потоков. Для реализации описанного механизма в пакете java.util.concurrent предусмотрен класс CyclicBarrier (с версии 1.5).
Подробнее
В многопоточном программировании часто случаются ситуации, когда поток должен находится в режиме ожидания в определенной точке приложения, пока остальные потоки не достигнут этой точки. Как только нужное количество потоков достигает точки ожидания, то приостановка выполнения потоков снимается и потоки могут вновь продолжить свою работу. На пример, если ряд потоков, каждый из которых выполняет часть общего вычисления и результат их работы должен быть объединен в общий результат. Объединить результат вычисления можно только в том случае, когда все потоки завершат свои маленькие вычисления. Поэтому потоки, которые первые завершили свою работы должны ожидать завершения работы оставшихся потоков. Для реализации описанного механизма в пакете java.util.concurrent предусмотрен класс CyclicBarrier (с версии 1.5).
Подробнее
Telegraph
Многопоточность. Класс CyclicBarrier
В многопоточном программировании часто случаются ситуации, когда поток должен находится в режиме ожидания в определенной точке приложения, пока остальные потоки не достигнут этой точки. Как только нужное количество потоков достигает точки ожидания, то приостановка…
👍4
В чём заключается различие между методами submit() и execute() у пула потоков?
Оба метода являются способами подачи задачи в пул потоков, но между ними есть небольшая разница.
Оба метода являются способами подачи задачи в пул потоков, но между ними есть небольшая разница.
execute(Runnable command)
определён в интерфейсе Executor
и выполняет поданную задачу и ничего не возвращает.submit()
– перегруженный метод, определённый в интерфейсе ExecutorService
. Способен принимать задачи типов Runnable
и Callable
и возвращать объект Future
, который можно использовать для контроля и управления процессом выполнения, получения его результата.Бесплатный онлайн-митап для Java-разработчиков — Luxoft TechFest №7 💻
🗓 10 февраля, 18:00
На следующей неделе Luxoft при поддержке JUG Ru Group проведет уже седьмой митап TechFest. Он будет посвящен Java: вас ждет три доклада от спикеров из Luxoft и Яндекса.
Программа:
– Сергей Владимиров, «Hibernate: избегать или научиться готовить».
– Дмитрий Подлесных, «Пора начать/остановиться писать тесты».
– Алексей Лапин, «Опыт работы в банке: мониторинг Apache Flink и доморощенный housekeeper».
А также вас ждут дискуссии после каждого доклада и розыгрыши призов: можно будет получить сертификаты на курсы Luxoft Training, билет на конференцию JPoint и фирменных уточек, как на конференциях JUG Ru Group 🙂
Подробности и регистрация на сайте: https://bit.ly/3ricKWx
🗓 10 февраля, 18:00
На следующей неделе Luxoft при поддержке JUG Ru Group проведет уже седьмой митап TechFest. Он будет посвящен Java: вас ждет три доклада от спикеров из Luxoft и Яндекса.
Программа:
– Сергей Владимиров, «Hibernate: избегать или научиться готовить».
– Дмитрий Подлесных, «Пора начать/остановиться писать тесты».
– Алексей Лапин, «Опыт работы в банке: мониторинг Apache Flink и доморощенный housekeeper».
А также вас ждут дискуссии после каждого доклада и розыгрыши призов: можно будет получить сертификаты на курсы Luxoft Training, билет на конференцию JPoint и фирменных уточек, как на конференциях JUG Ru Group 🙂
Подробности и регистрация на сайте: https://bit.ly/3ricKWx
Хитрые задачи по Java
Совсем недавно я сдал OCA Java SE 7 Programmer I. За время подготовки успел решить огромное количество задач и извлечь из них много тонких моментов языка. Самые интересные и ловкие — сохранял на будущее. И вот у меня накопилась небольшая личная коллекция, лучшую часть которой я здесь и опишу.
https://habr.com/ru/post/203796/
Совсем недавно я сдал OCA Java SE 7 Programmer I. За время подготовки успел решить огромное количество задач и извлечь из них много тонких моментов языка. Самые интересные и ловкие — сохранял на будущее. И вот у меня накопилась небольшая личная коллекция, лучшую часть которой я здесь и опишу.
https://habr.com/ru/post/203796/
👍6👎2
Java 18. Что нового добавили, и почему вам это пригодится
Выход Java 18 назначен на 22 марта 2022 года, ждать осталось недолго. Релиз уже несколько дней находится во второй фазе стабилизации, а значит, список фич уже финализирован, а значит настало время обратить на них наше внимание.
Подробнее
Выход Java 18 назначен на 22 марта 2022 года, ждать осталось недолго. Релиз уже несколько дней находится во второй фазе стабилизации, а значит, список фич уже финализирован, а значит настало время обратить на них наше внимание.
Подробнее
👍2