Java Learning
18.7K subscribers
1.62K photos
1 video
3 files
998 links
№ 5079899194

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

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

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

Реклама на бирже - https://telega.in/c/Java_per_month
Download Telegram
Строим свой SSO сервер используя Spring Authorization Server

Смотреть статью
👍7
#Вопросы_с_собеседования

Что такое перегрузка методов?

Перегрузка методов — это свойство полиморфизма, в котором при помощи изменения сигнатуры метода можно создать различные реализации методов для одной и той же операции:
- одинаковое имя метода;
- различные аргументы;
- различный порядок аргументов;

Например, один и тот же add() из List может быть перегружен следующим образом и будет выполнять добавление разным способом, в зависимости от аргументов метода:
- add(Object o) — просто добавляет объект;
- add(int index, Object o) — добавляет объект в определенный индекс;
- add(Collection<Object> c) — добавляет список объектов;
- add(int index, Collection<Object> c) — добавляет список объектов, начиная с определенного индекса.
👍21
Что выдаст код выше?
Anonymous Quiz
52%
Ошибка компиляции
8%
Runtime error
39%
3 4
1%
4 3
👍19
#Вопросы_с_собеседования

Как преобразовать строку в целое число?

Ответ на картинке.
👍25😱91😢1
Разработка простого VPN-приложения на Java с использованием библиотеки SSLSocket

Сегодня мы рассмотрим разработку простого VPN-приложения на Java с использованием SSLSocket из пакета javax.net.ssl для обеспечения безопасного обмена данными между клиентом и сервером.

Создание SSL-соединения между клиентом и сервером

1.
Создайте класс SimpleSSLServer, который будет принимать входящие SSL-соединения и перенаправлять трафик

2. Создайте класс SimpleSSLClient, который будет подключаться к SimpleSSLServer и отправлять данные через безопасное соединение

3. Запустите SimpleSSLServer и подключитесь к нему с помощью SimpleSSLClient

Данный пример демонстрирует простейшую реализацию VPN-приложения на Java с использованием SSL-соединений для обеспечения безопасности данных. Однако в реальном VPN-приложении потребуется реализовать более сложную логику, такую как аутентификация пользователей, управление доступом, поддержка различных протоколов.
👍301
#Вопросы_с_собеседования

🔍 Можем ли мы перегрузить методы по возвращаемому типу?

Мы не можем перегружать по возвращаемому типу. Это поведение аналогично C++.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍25
#Вопросы_с_собеседования

Из за чего может возникать NoClassDefFoundError, NoSuchMethodError?

🔸 NoClassDefFoundError может возникнуть, если нужной библиотеки с этим классом нет в classpath
🔸 NoSuchMethodError может возникнуть из-за несовместимости ваших библиотек, если зависимая библиотека A вызывает метод из старой версии библиотеки B, но в classpath есть более новая версия библиотеки B, c другой сигнатурой этого метода
Please open Telegram to view this post
VIEW IN TELEGRAM
👍132
Что такое абстрактные классы и методы в Java

Абстрагирование – это процесс, в ходе которого от пользователя скрываются многие детали реализации, а предоставляются только те детали, которые действительно важны.

Смотреть статью
👍11
Комбинирование хеш-таблиц

Комбинирование двух хеш-таблиц вручную через цикл очень неэффективно. Вот альтернативное решение этой проблемы, которое вам возможно понравится.
👍19
Многопоточность в мобильной разработке

В этой статье я хочу рассмотреть один из важнейших аспектов мобильной разработки — многопоточность. Многопоточность позволяет выполнять несколько задач одновременно и повышать производительность приложения.

Смотреть статью
👍6
#Вопросы_с_собеседования

Если equals() переопределен, есть ли какие-либо другие методы, которые следует переопределить?

Равные объекты должны возвращать одинаковые хэш коды. При переопределении equals() нужно обязательно переопределять и метод hashCode().
👍22😱2🤔1
Метод Collections.shuffle

Метод shuffle() случайным образом перемешивает все элементы переданного списка.
👍26🤔1
Что будет выведено на экран в результате выполнения следующего кода: public class SomeClass { static int x = 5; public static void main(String[] args) { int x; int y = 5; if (y > 3) x = 1; System.out.println(x); } }
Anonymous Quiz
41%
сообщение об ошибке компиляции
36%
1
2%
3
13%
предупреждение о потенциальной ошибке
8%
5
👍132🔥1
#Вопросы_с_собеседования

Что такое маркерный интерфейс? Каковы известные примеры таких интерфейсов в Java?

Маркерный интерфейс — это интерфейс без каких-либо методов. Обычно он реализуется классом или расширяется другим интерфейсом для обозначения определенного свойства. Наиболее широко известными маркерами в стандартной библиотеке Java являются следующие:

☕️ Serializable используется для явного указания того, что этот класс может быть сериализован;
☕️ Cloneable позволяет клонировать объекты с помощью метода clone (без интерфейса Cloneable этот метод выдает исключение CloneNotSupportedException);
☕️ Remote используется в RMI для указания интерфейса, методы которого можно вызывать удаленно.
👍16
#Вопросы_с_собеседования

Скомпилируется ли код с картинки?

Ответ:
Да, код будет скомпилирован, потому что он следует спецификации функционального интерфейса, определяющей только один абстрактный метод. Второй метод, count, является методом по умолчанию, который не увеличивает количество абстрактных методов.
👍20😱4