10 лучших ответов на вопросы о собеседовании по Java — необходимо прочитать перед тем, как прийти на любое собеседование по Java
Опубликовано: 2016-03-01
С прошлого года я получил очень много писем (еженедельно более 10 писем) с вопросами о том, почему бы не публиковать Java Interview Questions
для читателей.
Я думал об этом с прошлой недели и, наконец, решил задать главные вопросы Java Interview на Crunchify.
Please note
: не существует такого понятия, как лучшие вопросы для интервью, но мы можем сделать все возможное, чтобы охватить все основные советы по Java, Spring MVC, Maven, Apache Tomcat и J2EE на этих интервью.
Это первая 1st part
вопросов для собеседования по Java, и в этом посте у нас есть 10 лучших. Оставьте свои feedback and suggestions
, если вы хотите, чтобы мы поставили next top 10
вопросов для интервью.
Кроме того, если вы ниже всех вопросов, то вы находитесь в правильном месте.
- Java интервью вопросы и ответы для первокурсников
- лучшие вопросы на собеседовании по java
- продвинутые секреты собеседования по Java
- вопросы на собеседовании по java для опытных
- вопросы на собеседовании по программированию на java
- Java интервью вопросы и ответы за 3 года опыта
- вопросы на собеседовании по java для опытных специалистов
- вопросы на собеседовании по java за 5 лет опыта
Давайте начнем…
Интервью Вопрос 1:
Каковы основные 3 концепции объектно-ориентированного программирования (ООП)?
1. Инкапсуляция
-
Encapsulation
— это механизм, с помощью которого разработчик может скрыть реализацию за интерфейсом. - Инкапсулированный код имеет две особенности:
- Переменные экземпляра защищены (обычно с модификатором private).
- Методы получения и установки обеспечивают доступ к переменным экземпляра.
- Пожалуйста, ознакомьтесь с учебным пособием: Полный пример сквозной рабочей инкапсуляции
- Общедоступные
setName()
иgetName()
являются точками доступа к переменным экземпляра.
- Общедоступные
2. Наследование
- Наследование позволяет классу быть подклассом суперкласса и тем самым наследовать
public and protected
variables and methods
суперкласса. - Наследование является ключевой концепцией, лежащей в основе
polymorphism
,overriding
,overloading
иcasting
.
3. Полиморфизм
-
Polymorphism
означает «множество форм». - Ссылочная переменная всегда имеет один неизменяемый тип, но может ссылаться на объект подтипа.
- На один объект можно ссылаться ссылочными переменными многих разных типов, если они относятся к одному и тому же типу или надтипу объекта.
- Вызовы полиморфных методов применяются только к переопределенным методам экземпляра.
Вопрос интервью 2:
Вы знаете о Daemon Thread в Java?
Потоки демона в Java подобны поставщикам услуг для других потоков или объектов, работающих в том же процессе, что и поток демона. Потоки демона используются для фоновых вспомогательных задач и нужны только во время выполнения обычных потоков. Если обычные потоки не выполняются, а оставшиеся потоки являются потоками демона, интерпретатор завершает работу.
Пожалуйста, взгляните на полный пример: https://crunchify.com/what-is-daemon-thread-in-java-example-attached/
Интервью Вопрос 3:
Что такое шаблон Singleton и знаете ли вы, как сделать его потокобезопасным и быстрым?
singleton pattern
— это шаблон проектирования, который ограничивает создание экземпляра класса one object
. Это полезно, когда требуется ровно один объект для координации действий в системе.
Пожалуйста, взгляните на подробный пример: https://crunchify.com/thread-safe-and-a-fast-singleton-implementation-in-java/
Интервью Вопрос 4:
Что такое JVM? Знаете ли вы о Heapsize, Stacksize и сборке мусора? Пожалуйста, поделитесь еще немного света.

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

Пожалуйста, ознакомьтесь с подробным руководством: https://crunchify.com/jvm-tuning-heapsize-stacksize-garbage-collection-fundamental/
Вопрос интервью 5:
Напишите программу на Java, которая подсчитывает общее количество символов, слов и строк.
Это наиболее часто задаваемый вопрос. Пожалуйста, посетите полное руководство для получения дополнительной информации: https://crunchify.com/how-to-read-file-in-java-and-count-total-number-of-characters-words-and-lines/

Вопрос интервью 6:
Что такое JSON и как читать объект JSON из файла?
JSON
(нотация объектов JavaScript) — это облегченный формат обмена данными. Людям легко читать и писать. Машины легко анализируют и генерируют. Он основан на подмножестве языка программирования JavaScript.

Для получения подробной информации о JSON посетите: https://crunchify.com/what-is-json-javascript-object-notation/
Следуйте этим руководствам, чтобы узнать, как ЧИТАТЬ JSON и ЗАПИСАТЬ объект JSON в java.
Вопрос интервью 7:
Что такое семафор и мьютекс в Java. Предоставьте подробное объяснение, связанное с многопоточностью

Java Concurrency — очень широкая тема. Существуют сотни учебных пособий и примеров, доступных для использования. Некоторое время назад я написал несколько руководств по одновременному запуску нескольких потоков в Java и различным типам синхронизированных блоков.
Пожалуйста, посетите подробное руководство для получения дополнительных объяснений: https://crunchify.com/what-is-java-semaphore-and-mutex-java-concurrency-multithread-explained-with-example/
Вопрос интервью 8:
Вы знаете о HashMap, ConcurrentHashMap, SynchronizedMap? Какой из них быстрее?
HashMap
— очень мощная структура данных в Java. Мы используем его каждый день и почти во всех приложениях. Я бы посоветовал вам посетить учебник для более подробной информации: https://crunchify.com/hashmap-vs-concurrenthashmap-vs-synchronizedmap-how-a-hashmap-can-be-synchronized-in-java/
Вопрос интервью 9:
Что такое абстрактный класс и интерфейс в Java?
Это также очень популярный вопрос для собеседования по Java. Это очень большая тема, и у нас есть полное руководство со всеми подробностями здесь.
- Абстрактный класс в Java
- Интерфейс в Java
Вопрос интервью 10:
Насколько вы знакомы с Spring MVC? Пожалуйста, предоставьте некоторые подробности.

Пожалуйста, посетите ниже 3 учебника, которые охватывают все основы Spring MVC:
- Введение в Spring MVC
- Привет, мир, пример
- Spring MVC и JSP/сервлет
NOTE:
На Crunchify у нас есть более 500 Java tutorials
. Дайте нам знать, если вы ищете еще какие-то руководства, которых нет в списке.