#Вопросы_с_собеседования
❓Каковы состояния в жизненном цикле потока?
1) New: В этом состоянии объект класса Thread создается с использованием оператора new, но поток не существует. Поток не запускается, пока мы не вызовем метод start().
2) Runnable: В этом состоянии поток готов к запуску после вызова метода start(). Однако он еще не выбран планировщиком потока.
3) Running: В этом состоянии планировщик потока выбирает поток из состояния готовности, и тот работает.
4) Waiting/Blocked: в этом состоянии поток не работает, но все еще жив или ожидает завершения другого потока.
5) Dead/Terminated: при выходе из метода run() поток находится в завершенном или мертвом состоянии.
❓Каковы состояния в жизненном цикле потока?
1) New: В этом состоянии объект класса Thread создается с использованием оператора new, но поток не существует. Поток не запускается, пока мы не вызовем метод start().
2) Runnable: В этом состоянии поток готов к запуску после вызова метода start(). Однако он еще не выбран планировщиком потока.
3) Running: В этом состоянии планировщик потока выбирает поток из состояния готовности, и тот работает.
4) Waiting/Blocked: в этом состоянии поток не работает, но все еще жив или ожидает завершения другого потока.
5) Dead/Terminated: при выходе из метода run() поток находится в завершенном или мертвом состоянии.
👍31
Spring. Экспертное мнение о плюсах и минусах самого популярного Java-фреймворка
Spring является самым популярным инструментом при разработке промышленных приложений на Java – от больших монолитных приложений до микросервисов.
Смотреть статью
Spring является самым популярным инструментом при разработке промышленных приложений на Java – от больших монолитных приложений до микросервисов.
Смотреть статью
Хабр
Spring. Экспертное мнение о плюсах и минусах самого популярного Java-фреймворка
Spring является самым популярным инструментом при разработке промышленных приложений на Java – от больших монолитных приложений до микросервисов. Сразу стоит отметить, что под термином Spring мы...
👍10
Зубчатый массив в Java
Зубчатый массив — это массив массивов, в котором массивы элементов могут быть разных размеров, т. е. мы можем создать двумерный массив, но с переменным числом столбцов в каждой строке. Эти типы массивов также известны как зубчатые массивы.
Подробнее о зубчатых массивах можно почитать здесь.
Зубчатый массив — это массив массивов, в котором массивы элементов могут быть разных размеров, т. е. мы можем создать двумерный массив, но с переменным числом столбцов в каждой строке. Эти типы массивов также известны как зубчатые массивы.
Подробнее о зубчатых массивах можно почитать здесь.
👍23🔥1
#Вопросы_с_собеседования
❓Могут ли у разных объектов быть одинаковые hashCode()?
Да, могут. Метод hashCode() не гарантирует уникальность возвращаемого значения. Ситуация, когда у разных объектов одинаковые хэш коды называется коллизией. Вероятность возникновения коллизии зависит от используемого алгоритма генерации хэш кода.
❓Могут ли у разных объектов быть одинаковые hashCode()?
Да, могут. Метод hashCode() не гарантирует уникальность возвращаемого значения. Ситуация, когда у разных объектов одинаковые хэш коды называется коллизией. Вероятность возникновения коллизии зависит от используемого алгоритма генерации хэш кода.
👍31
#Вопросы_с_собеседования
❓Как можно вывести на экран уникальные квадраты чисел используя метод map()?
Ответ на картинке.
❓Как можно вывести на экран уникальные квадраты чисел используя метод map()?
Ответ на картинке.
👍28
#Вопросы_с_собеседования
❓Объясните смысл параметров в конструкторе HashMap(int initialCapacity, float loadFactor)
• initialCapacity - исходный размер HashMap, количество корзин в хэш-таблице в момент её создания.
• loadFactor - коэффициент заполнения HashMap, при превышении которого происходит увеличение количества корзин и автоматическое перехэширование. Равен отношению числа уже хранимых элементов в таблице к её размеру.
❓Объясните смысл параметров в конструкторе HashMap(int initialCapacity, float loadFactor)
• initialCapacity - исходный размер HashMap, количество корзин в хэш-таблице в момент её создания.
• loadFactor - коэффициент заполнения HashMap, при превышении которого происходит увеличение количества корзин и автоматическое перехэширование. Равен отношению числа уже хранимых элементов в таблице к её размеру.
👍16
#Вопросы_с_собеседования
❓Как можно заранее выйти из цикла?
Используя оператор break, мы можем немедленно прекратить выполнение цикла:
❓Как можно заранее выйти из цикла?
Используя оператор break, мы можем немедленно прекратить выполнение цикла:
for (int i = 0; ; i++) {
if (i > 10) {
break;
}
}😢23👍14❤2🤔2
#Вопросы_с_собеседования
❓Что такое неизменяемый класс?
Класс называется неизменяемым, если его состояние не может быть изменено после создания. К примеру String в Java является неизменяемым. Как только вы создадите строку, вы не можете изменить ее содержание, и любая операция над ней вернёт новый объект.
Неизменяемые объекты хорошо применять при многопоточном программировании, так как при их использовании вы можете не беспокоиться о синхронизации. По сути, вся парадигма функционального программирования построена на неизменяемых объектах.
Подробнее тут: https://javarevisited.blogspot.com/2013/03/how-to-create-immutable-class-object-java-example-tutorial.html#axzz7O0LoB9rM
❓Что такое неизменяемый класс?
Класс называется неизменяемым, если его состояние не может быть изменено после создания. К примеру String в Java является неизменяемым. Как только вы создадите строку, вы не можете изменить ее содержание, и любая операция над ней вернёт новый объект.
Неизменяемые объекты хорошо применять при многопоточном программировании, так как при их использовании вы можете не беспокоиться о синхронизации. По сути, вся парадигма функционального программирования построена на неизменяемых объектах.
Подробнее тут: https://javarevisited.blogspot.com/2013/03/how-to-create-immutable-class-object-java-example-tutorial.html#axzz7O0LoB9rM
Blogspot
How to create Immutable Class and Object in Java - Tutorial Example
A blog about Java, Programming, Algorithms, Data Structure, SQL, Linux, Database, Interview questions, and my personal experience.
👍15
Корректно ли такое выражение?
Anonymous Quiz
46%
Да
46%
Нет, будет ошибка компиляции
9%
Нет, будет ошибка во время выполнения
👍27🔥5
Как преобразовать цветное изображение в черно-белое
Иногда может потребоваться преобразовать изображение в двоичное. Другими словами, вам нужно преобразовать цветное изображение или изображение в оттенках серого в черно-белое изображение.
Более подробно о работе с изображениями вы можете ознакомиться здесь.
Иногда может потребоваться преобразовать изображение в двоичное. Другими словами, вам нужно преобразовать цветное изображение или изображение в оттенках серого в черно-белое изображение.
Более подробно о работе с изображениями вы можете ознакомиться здесь.
👍25❤8
#Вопросы_с_собеседования
Какой результат будет выведен в консоль?
Ответ:
This is abstract class constructor
This is demo class constructor
Вопрос на понимание абстрактных классов. Создать экземпляр абстрактного класса нельзя, но он все же имеет конструктор. Более того любой класс имеет конструктор, даже если он не задан явно (он будет добавлен при компиляции). Здесь важно понимать, что при создании экземпляра наследника, самой первой строкой в конструкторе класса наследника будет вызван конструктор класса родителя.
Какой результат будет выведен в консоль?
Ответ:
This is demo class constructor
Вопрос на понимание абстрактных классов. Создать экземпляр абстрактного класса нельзя, но он все же имеет конструктор. Более того любой класс имеет конструктор, даже если он не задан явно (он будет добавлен при компиляции). Здесь важно понимать, что при создании экземпляра наследника, самой первой строкой в конструкторе класса наследника будет вызван конструктор класса родителя.
👍36
#Вопросы_с_собеседования
❓Что такое Java Classloader? Перечислите и объясните назначение трех типов загрузчиков классов.
Загрузчик классов Java — это часть среды выполнения Java, которая загружает классы по запросу (отложенная загрузка) в JVM (виртуальную машину Java). Классы могут быть загружены из локальной файловой системы, удаленной файловой системы или даже из Интернета.
При запуске JVM используются три загрузчика классов: 1. Bootstrap Classloader: загружает основной файл java API
❓Что такое Java Classloader? Перечислите и объясните назначение трех типов загрузчиков классов.
Загрузчик классов Java — это часть среды выполнения Java, которая загружает классы по запросу (отложенная загрузка) в JVM (виртуальную машину Java). Классы могут быть загружены из локальной файловой системы, удаленной файловой системы или даже из Интернета.
При запуске JVM используются три загрузчика классов: 1. Bootstrap Classloader: загружает основной файл java API
rt.jar из папки. 2. Extension Classloader: загружает файлы JAR из папки. 3. System classloader👍25
Собеседование Java Spring - Разбор вопросов с собеседования на Java Developer
В видео собраны самые интересные вопросы на Java-разработчика
Смотреть видео
В видео собраны самые интересные вопросы на Java-разработчика
Смотреть видео
YouTube
Собеседование Java Spring - Разбор вопросов с собеседований на Java Developer
Собрали самые интересные вопросы с собеседований на Java-разработчика. В видео две части. В первой рассказываем про Java: Коллекции, Hash Code & Equals Contract, Functional interfaces, Stream API, Garbage collector, устройство памяти, heap, concurrency.
Во…
Во…
👍10🔥2
#Вопросы_с_собеседования
❓Могут ли нестатические методы перегрузить статические?
Да. В итоге получится два разных метода. Статический будет принадлежать классу и будет доступен через его имя, а нестатический будет принадлежать конкретному объекту и доступен через вызов метода этого объекта.
❓Могут ли нестатические методы перегрузить статические?
👍29😱4🤔2
#Вопросы_с_собеседования
Какая проблема возникнет с этим кодом?
Ответ: Данный код не с компилируется.
Этот вопрос на знание иерархии исключений, в данном случае FileNotFoundException унаследован от IOException, первый catch будет перехватывать все исключения и в следующий блок catch управление не будет передано.
Какая проблема возникнет с этим кодом?
Ответ: Данный код не с компилируется.
Этот вопрос на знание иерархии исключений, в данном случае FileNotFoundException унаследован от IOException, первый catch будет перехватывать все исключения и в следующий блок catch управление не будет передано.
👍23😢8