Java Learning
18.9K subscribers
1.6K photos
1 video
3 files
980 links
№ 5079899194

Обучающий канал по Java

Ссылка для друга - https://t.iss.one/+ZEYYht6-46w5MDM6

По всем вопросам @mascarov_valentin

Реклама на бирже - https://telega.in/c/Java_per_month
Download Telegram
Перевод строки в число

Часто бывает нужно перевести строку в число. У классов оберток примитивных типов есть методы, которые служат как раз для этой цели. Все эти методы начинаются со слова parse. Рассмотрим ниже перевод строки в целочисленное (Integer) и дробное (Double) числа.
👍284😢1
dbeaver — бесплатный универсальный инструмент для работы с базами данных и SQL-клиент

https://github.com/dbeaver/dbeaver
👍17🔥1
Какое значение будет сохранено в строку s?
String s = "value = " + 2 + 2;
Anonymous Quiz
8%
"value = 2 + 2"
36%
"value = 22"
23%
Ошибка компиляции
21%
"value = 4"
5%
"value = 2 2"
6%
Узнать ответ
👍27😱3
#Вопросы_с_собеседования

Что такое Aspect, Advice, Pointcut и JoinPoint в АОП?

Aspect
— класс, который реализует сквозные функции, такие как управление транзакциями.
Advice — методы, которые выполняются, когда в приложении достигается определенный JoinPoint с соответствующим Pointcut.
Pointcut — набор регулярных выражений, которые сопоставляются с JoinPoint, чтобы определить, нужно ли выполнять Advice или нет.
JoinPoint — некая точка во время выполнения программы, например выполнение метода или обработка исключения.
👍24
#Вопросы_с_собеседования

Что такое string-pool? В чем отличие cоздания строки через new от литерала? Что такое String.intern()?

string-pool — структура в памяти, хранящая массив всех строк-литералов программы.
String.intern(), соответственно, вернет строку из пула, при наличии таковой. Полезно при сравнениях вида:

new String("hello").intern() == new String("hello").intern()

Т.к без интернирования пришлось бы сравнивать строки через equals, что может быть медленнее при наличии длинных строк. В данном случае возвращается ссылка на один и тот же объект строки из пула, и проверка проходит с true.
👍242
#Вопросы_с_собеседования

Что вы знаете об интерфейсе FileFilter?

Интерфейс FileFilter применяется для проверки, попадает ли объект File под некоторое условие. Этот интерфейс содержит единственный метод boolean accept(File pathName). Этот метод необходимо переопределить и реализовать.
👍18
#Вопросы_с_собеседования

Что такое иерархия исключений?

Иерархия следующая:
Throwable – родительский класс для всех классов Exception. Есть два типа исключений: отмеченные исключения и UncheckedExceptions или RunTimeExceptions. Оба типа исключений расширяют класс Exception, тогда как ошибки далее классифицируются на ошибку виртуальной машины и ошибку утверждения.
👍21😢4
#Вопросы_с_собеседования

Как преобразовать HashMap в ArrayList в Java?

Ответ на картинке.
👍33🤔4
#Вопросы_с_собеседования

В equals() требуется проверять, что аргумент equals(Object that) такого же типа что и сам объект. В чем разница между this.getClass() == that.getClass() и that instanceof MyClass?

Оператор instanceof сравнивает объект и указанный тип. Его можно использовать для проверки, является ли данный объект экземпляром некоторого класса, либо экземпляром его дочернего класса, либо экземпляром класса, который реализует указанный интерфейс.

this.getClass() == that.getClass() проверяет два класса на идентичность, поэтому для корректной реализации контракта метода equals() необходимо использовать точное сравнение с помощью метода getClass().
👍19😢2
#Вопросы_с_собеседования

Напишите метод, который на вход получает коллекцию объектов, а возвращает коллекцию уже без дубликатов

Ответ на картинке.
👍53🤔3
#Вопросы_с_собеседования

Опишите специальные коллекции для перечислений. Каковы преимущества их внедрения по сравнению с обычными коллекциями?

EnumSet и EnumMap — это специальные реализации интерфейсов Set и Map соответственно. Всегда стоит использовать эти реализации, когда имеете дело с перечислениями, потому что они очень эффективны.

EnumSet — это просто битовый вектор с «единицами» в позициях, соответствующих порядковым значениям перечислений, присутствующих в множестве. Чтобы проверить, находится ли значение перечисления в множестве, реализация просто должна проверить, является ли соответствующий бит в векторе «единицей», что является очень простой операцией.

Точно так же EnumMap — это массив, доступ к которому осуществляется с помощью порядкового значения перечисления в качестве индекса. В случае с EnumMap нет необходимости вычислять хеш-коды или разрешать коллизии.
👍17
Какое максимальное количество потоков может одновременно, не блокируя друг друга, совершить запись в ConcurrentHashMap?
Anonymous Quiz
31%
1
19%
По кол-ву записей (entry)
36%
По кол-ву корзин (bucket)
14%
По кол-ву деревьев (tree)
🤔15👍11
Метод containsKey()

Метод java.util.HashMap.containsKey() используется для проверки того, отображается ли конкретный ключ в HashMap или нет. Он принимает ключевой элемент в качестве параметра и возвращает True, если этот элемент есть в коллекции.
👍21
#Вопросы_с_собеседования

Каковы варианты использования Spring Framework?

Spring Framework можно использовать по-разному:
☕️ Как полноценное веб-приложение Spring.
☕️ В качестве стороннего веб-фреймворка с использованием Spring Frameworks среднего уровня.
☕️ Для удаленного использования.
☕️ Как корпоративный Java-бин, который может обертывать существующие POJO (Plain Old Java Objects).
👍17🤔3😢2
#Вопросы_с_собеседования

Как получить день недели по дате?

Ответ на картинке.
👍38
Получаем текущую дата и время в Java

Получить текущую дату и время в Java достаточно не трудно. Вы можете использовать простой объект date вместе с методом toString(), чтобы вывести текущую дату и время следующим образом(см картинку).
👍26🤔63😢1
Как разделить строку на слова?

Легко с помощью метода split. Он возвращает массив строк, вычисленных путем разделения переданной строки вокруг переданного регулярного выражения.
👍20😱3
#Вопросы_с_собеседования

Можно ли сузить уровень доступа/тип возвращаемого значения при переопределении метода?

• При переопределении метода нельзя сузить модификатор доступа к методу (например с public в MainClass до private в Class extends MainClass).
• Изменить тип возвращаемого значения при переопределении метода нельзя, будет ошибка attempting to use incompatible return type.
• Можно сузить возвращаемое значение, если они совместимы.
👍21🤔31
Генерируем код и пароль

Часто мы забываем наши пароли и выбираем опцию «Забыть пароль», и в кратчайшие сроки мы получаем новый пароль на наш зарегистрированный адрес электронной почты или номер телефона для входа в нашу учетную запись.

Иногда мы получаем доступ к нашим банковским счетам во время покупок в интернет-магазине и чтобы подтвердить наш переход с банковского счета, нам отправляют нам OTP (одноразовый пароль) на наш зарегистрированный номер телефона или адрес электронной почты.

Следующий код объясняет, как быстро генерировать такие пароли и OTP.
👍53🔥71