Javazavr. Обучение Java.
4.2K subscribers
36 photos
55 links
Главный канал по Java.

Контент на любой вкус.
1. Туториалы
2. Видео
3. Задачи
4. Тесты
И многое другое.

Реклама: @anothertechrock
Download Telegram
Какими свойствами обладает порождаемое equals() отношение эквивалентности?

Пишите в комментариях ваш вариант. Ответ будет у нас в канале.

#вопросы_с_собеседований
👍2👏2
Ответ на "Какими свойствами обладает порождаемое equals() отношение эквивалентности?"

• Рефлексивность: для любой ссылки на значение x, x.equals(x) вернет true;
• Симметричность: для любых ссылок на значения x и y, x.equals(y) должно вернуть true, тогда и только тогда, когда y.equals(x) возвращает true.
• Транзитивность: для любых ссылок на значения x, y и z, если x.equals(y) и y.equals(z) возвращают true, тогда и x.equals(z) вернёт true;
• Непротиворечивость: для любых ссылок на значения х и у, если несколько раз вызвать х.equals(y), постоянно будет возвращаться значение true либо постоянно будет возвращаться значение false при условии, что никакая информация, используемая при сравнении объектов, не поменялась.

Для любой ненулевой ссылки на значение х выражение х.equals(null) должно возвращать false.

#вопросы_с_собеседований
👍1
Приглашаем на открытый урок «Playwright и его использование для UI автотестирования».

🗓 24 октября в 20:00 МСК

🆓 Бесплатно. Урок в рамках старта курса «Java QA Engineer. Professional»

На вебинаре разберем:


- обзор инструмента playwright
- использование playwright для написания UI атвотестов
- плюсы и минусы playwright и чем он лучше selenium

Спикер Павел Балахонов — Senior QA Automation Engineer.

Все участники вебинара получат специальную цену на обучение!

🔗 Ссылка на регистрацию

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Для чего нужен метод hashCode()?

Пишите в комментариях ваш вариант. Ответ будет у нас в канале.

#вопросы_с_собеседований
👍4
Ответ на "Для чего нужен метод hashCode()?"

Метод hashCode() необходим для вычисления хэш кода переданного в качестве входного параметра объекта. В Java это целое число, в более широком смысле - битовая строка фиксированной длины, полученная из массива произвольной длины. Этот метод реализован таким образом, что для одного и того же входного объекта, хэш код всегда будет одинаковым. Следует понимать, что в Java множество возможных хэш кодов ограничено типом int, а множество объектов ничем не ограничено. Из-за этого, вполне возможна ситуация, что хэш коды разных объектов могут совпасть:

• если хэш коды разные, то и объекты гарантированно разные;
• если хэш коды равны, то объекты могут не обязательно равны.

#вопросы_с_собеседований
👍6🎉1
Как между собой связаны Iterable и Iterator?

Пишите в комментариях ваш вариант. Ответ будет у нас в канале.

#вопросы_с_собеседований
1
Ответ на "Как между собой связаны Iterable и Iterator?"

Интерфейс Iterable имеет только один метод - iterator(), который возвращает Iterator.

#вопросы_с_собеседований
💯 Хватит ждать вечность, пока выполняются тесты!

➡️ Многопоточность в Java — это ключ к ускорению процессов.
Хотите, чтобы тесты запускались параллельно и быстро? Приходите на открытый урок 20 ноября в 20:00 мск и узнайте, как использовать многопоточность и futures для суперэффективной автоматизации.

✔️ Мы покажем, как работать с потоками и futures в Java, а также обсудим параллельные циклы и их применение в тестировании. Научитесь ускорять автотесты, оптимизировать процессы и прокачивать навыки, востребованные на рынке!

🎙️ Спикер Павел Балахонов — ведущий инженер по автоматизированному тестированию на проекте VK Private Cloud Solutions, опытный ментор и преподаватель.

⤵️ Хотите стать экспертом в автоматизации тестирования на Java? Запишитесь на урок и получите скидку на участие в курсе «Java QA Engineer. Professional»: https://vk.cc/cEVR8n

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
😁1
Сколько элементов будет пропущено, если Iterator.next() будет вызван после 10-ти вызовов Iterator.hasNext()?

Пишите в комментариях ваш вариант. Ответ будет у нас в канале.

#вопросы_с_собеседований
1🎉1
Ответ на "Сколько элементов будет пропущено, если Iterator.next() будет вызван после 10-ти вызовов Iterator.hasNext()?"

Нисколько - hasNext() осуществляет только проверку наличия следующего элемента.

#вопросы_с_собеседований
📕Открытый урок по Scala для Java, C#, Kotlin и Android программистов, аналитиков данных и специалистов по обработке больших данных

На открытом уроке 4 декабря в 20:00 мск мы изучим, функциональные стримы в Scala на примере fs2.

📗На уроке:
- Рассмотрим, что такое стримы и их разновидности;
- Изучим конструкторы и комбинаторы fs2;
- Проанализируем примеры использования стримов для обработки данных без загрузки в память.

📘В результате:
- Поймете, что такое стримы и как они отличаются от коллекций;
- Как использовать конструкторы и комбинаторы fs2 для обработки данных;
- Получите примеры применения стримов в реальных задачах, что позволит оптимизировать обработку данных.

Спикер Валентин Шилин — senior программист/аналитик данных Deutsche Telekom IT GmbH, 15+ лет программирования на С++, С#, JavaScript, Python, Scala, Java и эксперт в обработке больших данных с помощью Scala/Spark и Hadoop Cloudera.

👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://otus.pw/BNBF/

📙 Все участники открытого урока получат скидку на курс "Scala-разработчик"

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Пояснение к предыдущему вопросу👆

👨🏻‍💻 Операторы & и |применяются как побитовое «И» и «ИЛИ» соответственно, если операнды целочисленные, и как логические «И» и «ИЛИ», если операнды булевы. При этом & и |, в случае логического выражения, проверяют оба своих операнда на истинность.

Их сокращенные версии, &&и ||, оптимизированы – «И» не проверяет на истинность второй операнд, если первый «ЛОЖЬ», «ИЛИ» не проверяет второй операнд, если первый «ИСТИНА».

Это делает их полезными для оптимизации кода и позволяет избежать NullPointerExceptionв тех случаях, когда второй операнд-выражение может его инициировать (в первом операнде размещают проверку на null-значение).
😁1
Как одним вызовом из List получить List со всеми элементами, кроме первых и последних 3-х?

Пишите в комментариях ваш вариант. Ответ будет у нас в канале.

#вопросы_с_собеседований
1
Ответ на "Как одним вызовом из List получить List со всеми элементами, кроме первых и последних 3-х?"

List<Integer> subList = list.subList(3, list.size() - 3);

#вопросы_с_собеседований
🔥6
Что такое «fail-fast поведение»?

Пишите в комментариях ваш вариант. Ответ будет у нас в канале.

#вопросы_с_собеседований
1
Ответ на "Что такое «fail-fast поведение»?"

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

В Java Collections API некоторые итераторы ведут себя как fail-fast и выбрасывают ConcurrentModificationException, если после его создания была произведена модификация коллекции, т.е. добавлен или удален элемент напрямую из коллекции, а не используя методы итератора.

Реализация такого поведения осуществляется за счет подсчета количества модификаций коллекции (modification count):

• при изменении коллекции счетчик модификаций так же изменяется;
• при создании итератора ему передается текущее значение счетчика;
• при каждом обращении к итератору сохраненное значение счетчика сравнивается с текущим, и, если они не совпадают, возникает исключение.

#вопросы_с_собеседований
📕Открытый урок по Scala для Java, C#, Kotlin и Android программистов, аналитиков данных и специалистов по обработке больших данных

На открытом уроке 16 декабря в 20:00 мск мы изучим, эффекты в Scala.

📗На уроке:
- узнаем, что такое эффекты и какие они бывают;
- познакомимся с понятием функционального эффекта;
- разберемся, какие задачи они могут решать.

📘В результате:
Реализуем свой функциональный эффект, применив полученные навыки.

Спикер Алексей Воронец — руководитель разработки департамента проектных решений и поисковых систем в компании Naumen, 14+ лет разработки на Scala, Java, JavaScript и PHP.

👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://otus.pw/WhNw/

📙 Все участники открытого урока получат скидку на курс "Scala-разработчик"

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👍21🥰1
Чем stub отличается от mock?

Пишите в комментариях ваш вариант. Ответ будет у нас в канале.

#вопросы_с_собеседований
😁2
Ответ на "Чем stub отличается от mock?"

stub используется как заглушка сервисов, методов, классов и т.д. с заранее запрограммированным ответом на вызовы.

mock использует подмену результатов вызова, проверяет сам факт взаимодействия, протоколирует и контролирует его.

#вопросы_с_собеседований