Подготовка к java собеседованию

Этот раздел посвящён вопросам, которые могут быть заданы при прохождении интервью на позицию Java программиста.

Перед очередным интервью на следующий уровень квалификации, столкнулся с проблемой поиска вопросов (а особенно ответов!) для подготовки к собеседованию на должность Java developer. Поэтому было решено собрать в одном месте не только множество вопросов, найденных на разных сайтах, но и ответов к ним (вот с этим оказалось всё плохо).

Об авторстве
Большая часть вопросов из списка была получена из открытых источников, остальная добавлена автором из своего опыта прохождения собеседований. Т.к. мне не интересно искать оригинального автора того или иного вопроса, а так же ответов на него, то я буду указывать первую попавшуюся ссылку где был найден ответ\вопрос (или не указывать вообще, если ответ написал сам, например составив его из множества разных источников {сайт1+википедия+сайт2}). Часть ответов будет скопировано сюда «как есть» с указанием сайта\автора. Если кого-то это сильно заденет, то вы можете написать мне через обратную связь для указания авторства вашего уникального ответа на вопрос.
*Буду рад присланным ответам, дополнениям или новым вопросам. Возможно, этим вы поможете подготовиться к собеседованию не только себе, но и другим людям. А мы поможем в Подготовка к java собеседованию. Благодаря Java создаются приложения для встраиваемых и мобильных систем, десктопов, но подавляющая часть Java-приложений — это большие распределенные системы уровня предприятия. В первую очередь, это связано с широким распространением языка, зрелостью технологии, множеством опенсорс-библиотек, фреймворков и инструментов разработки, огромным комьюнити. Большинство таких систем написаны или целиком на Java или используют компоненты, которые разработаны на основе этой технологии. Новые проекты, скорее всего, тоже начинают разрабатывать с использованием Java. Таким образом спрос на Java-специалистов растет и будет поддерживаться еще многие годы.

Информация