Java задачи с собеседований
6.27K subscribers
589 photos
6 videos
19 files
245 links
Задачи, тесты и теоретические вопросы по JAVA.

Репозиторий: https://github.com/proghub-official/java-interview
Прислать задачу/вопрос в дар: @cyberJohnny
Сотрудничество: @cyberJohnny
加入频道
Можно ли при объявлении класса использовать модификаторы abstract и final одновременно?
Anonymous Quiz
25%
Да
72%
Нет
3%
Не знаю
Чем отличается ArrayList от LinkedList? В каких случаях лучше использовать первый, а в каких второй?

#вопрос_на_собеседовании
ArrayList:
- Доступ к произвольному элементу по индексу за константное время O(1);
- Доступ к элементам по значению за линейное время O(N);
- Вставка в конец в среднем производится за константное время O(1);
- Удаление произвольного элемента из списка занимает значительное время, т.к. при этом все элементы находящиеся «правее» смещаются на одну ячейку влево (реальный размер массива (capacity) не изменяется);
- Вставка элемента в произвольное место списка занимает значительное время, т.к. при этом все элементы находящиеся «правее» смещаются на одну ячейку вправо;
- Минимум накладных расходов при хранении.

LinkedList:
- На получение элемента по индексу или значению потребуется линейное время O(N);
- На добавление и удаление в начало или конец списка потребуется константное O(1);
- Вставка или удаление в/из произвольного места за константное O(N);
- Требует больше памяти для хранения такого же количества элементов, потому что кроме самого элемента хранятся ещё указатели на следующий и предыдущий элементы списка.

В целом, LinkedList в абсолютных величинах проигрывает ArrayList и по потребляемой памяти, и по скорости выполнения операций. LinkedList предпочтительно применять, когда нужны частые операции вставки/удаления или в случаях, когда необходимо гарантированное время добавления элемента в список.
Является ли импортирование пакета java.awt, записанное в программе следующим образом:
Является ли импортирование пакета java.awt, записанное в программе следующим образом:
Anonymous Quiz
66%
Да
28%
Нет
6%
Не знаю
🔥 Собрали новый большой тест на знание Java!

Тест для проверки ваших знаний, их актуальности и глубины понимания языка. Включает в себя 30 вопросов разной сложности - от простых до требующих анализа кода.
🖊 30 вопросов
30 минут на прохождение

Линк: t.me/QuizBot?start=eKmlLvl4

📩 По любым вопросам и предложениям пишите: @igorhub
Java задачи с собеседований pinned «🔥 Собрали новый большой тест на знание Java! Тест для проверки ваших знаний, их актуальности и глубины понимания языка. Включает в себя 30 вопросов разной сложности - от простых до требующих анализа кода. 🖊 30 вопросов 30 минут на прохождение Линк: t.…»
📩 По любым вопросам и предложениям пишите в личку автору теста: @igorhub
Каким будет результат компиляции и запуска данного кода:
Что выведет на экран следующий код?
Что такое «анонимные классы»? Где они применяются?

#вопрос_на_собеседовании
Это вложенный локальный класс без имени, который разрешено декларировать в любом месте обрамляющего класса, разрешающем размещение выражений. Создание экземпляра анонимного класса происходит одновременно с его объявлением. В зависимости от местоположения анонимный класс ведет себя как статический либо как нестатический вложенный класс - в нестатическом контексте появляется окружающий его экземпляр.

Анонимные классы имеют несколько ограничений:

- Их использование разрешено только в одном месте программы - месте его создания;
- Применение возможно только в том случае, если после порождения экземпляра нет необходимости на него ссылаться;
- Реализует лишь методы своего интерфейса или суперкласса, т.е. не может объявлять каких-либо новых методов, так как для доступа к ним нет поименованного типа.

Анонимные классы обычно применяются для:

- Создания объекта функции (function object), например реализация интерфейса Comparator;
- Создания объекта процесса (process object), такого как экземпляры классов Thread, Runnable и подобных;
в статическом методе генерации;
- Инициализации открытого статического поля final, которое соответствует сложному перечислению типов, когда для каждого экземпляра в перечислении требуется отдельный подкласс.
Что напечатает следующий код?
Что будет выведено на экран?
Что будет выведено на экран?
Anonymous Quiz
18%
1
12%
2
59%
3
9%
Ошибка компиляции
2%
Не знаю
Нужен ли каналу чат для обсуждения вопросов/задач?
Anonymous Poll
66%
Да
34%
Нет