Свёрстанные вопросы и ответы by Victoria Demidova
Telegram Bot by cmmttd
- ООП [Junior]
- JVM [Junior]
- Java Core [Junior]
- Java Collections Framework [Junior]
- Java 8 [Junior]
- Потоки ввода-вывода в Java [Junior]
- Сериализация [Junior]
- Многопоточность [Junior]
- Servlets, JSP, JSTL [Middle+]
- Базы данных [Junior]
- SQL [Junior]
- JDBC [Junior]
- Spring [Junior]
- Тестирование [Junior]
- Журналирование [Middle+]
- UML [Middle+]
- XML [Middle+]
- Шаблоны проектирования [Middle+]
- Основы HTML [Junior]
- Основы CSS [Middle+]
- Основы Web [Junior]
- Дополнительные материалы
- Что такое ООП? [Junior]
- Назовите основные принципы ООП. [Junior]
- Что такое «инкапсуляция»? [Junior]
- Что такое «наследование»? [Junior]
- Что такое «полиморфизм»? [Junior]
- Что такое «абстракция»? [Junior]
- Что представляет собой «обмен сообщениями»? [Junior]
- Расскажите про основные понятия ООП: «класс», «объект», «интерфейс». [Junior]
- В чем заключаются преимущества и недостатки объектно-ориентированного подхода в программировании? [Junior]
- Что подразумевают в плане принципов ООП выражения «является» и «имеет»? [Junior]
- В чем разница между композицией и агрегацией? [Junior]
- Что такое статическое и динамическое связывание? [Middle+]]
- За что отвечает JVM Junior]
- Classloader [Middle+]
- Области данных времени выполнения [Junior]
- Frames [Middle+]
- Execution Engine [Middle+]
- Полезные ссылки
- Чем различаются JRE, JVM и JDK? [Junior]
- Какие существуют модификаторы доступа? [Junior]
- О чем говорит ключевое слово
final? [Junior] - Какими значениями инициализируются переменные по умолчанию? [Junior]
- Что вы знаете о функции
main()? [Junior] - Какие логические операции и операторы вы знаете? [Junior]
- Что такое тернарный оператор выбора? [Junior]
- Какие побитовые операции вы знаете? [Junior]
- Где и для чего используется модификатор
abstract? [Junior] - Дайте определение понятию «интерфейс». Какие модификаторы по умолчанию имеют поля и методы интерфейсов? [Junior]
- Чем абстрактный класс отличается от интерфейса? В каких случаях следует использовать абстрактный класс, а в каких интерфейс? [Junior]
- Почему в некоторых интерфейсах вообще не определяют методов? [Junior]
- Почему нельзя объявить метод интерфейса с модификатором
final? [Junior] - Что имеет более высокий уровень абстракции - класс, абстрактный класс или интерфейс? [Junior]
- Может ли объект получить доступ к
private-переменной класса? Если, да, то каким образом? [Junior] - Каков порядок вызова конструкторов и блоков инициализации с учётом иерархии классов? [Middle+]
- Зачем нужны и какие бывают блоки инициализации? [Middle+]
- К каким конструкциям Java применим модификатор
static? [Junior] - Для чего в Java используются статические блоки инициализации? [Middle+]
- Что произойдёт, если в блоке инициализации возникнет исключительная ситуация? [Middle+]
- Какое исключение выбрасывается при возникновении ошибки в блоке инициализации класса? [Middle+]
- Может ли статический метод быть переопределён или перегружен? [Junior]
- Могут ли нестатические методы перегрузить статические? [Junior]
- Можно ли сузить уровень доступа/тип возвращаемого значения при переопределении метода? [Junior]
- Возможно ли при переопределении метода изменить: модификатор доступа; возвращаемый тип; тип аргумента или их количество; имена аргументов или их порядок, убирать, добавлять, изменять порядок следования элементов секции
throws? [Junior] - Как получить доступ к переопределенным методам родительского класса? [Junior]
- Можно ли объявить метод абстрактным и статическим одновременно? [Junior]
- В чем разница между членом экземпляра класса и статическим членом класса? [Junior]
- Где разрешена инициализация статических/нестатических полей? [Junior/Middle+]
- Какие типы классов бывают в java? [Junior]
- Расскажите про вложенные классы. В каких случаях они применяются? [Junior]
- Что такое «статический класс»? [Junior]
- Какие существуют особенности использования вложенных классов: статических и внутренних? В чем заключается разница между ними? [Junior]
- Что такое «локальный класс»? Каковы его особенности? [Junior]
- Что такое «анонимные классы»? Где они применяются? [Junior]
- Каким образом из вложенного класса получить доступ к полю внешнего класса? [Junior]
- Для чего используется оператор
assert? [Junior] - Для чего нужен сборщик мусора? [Junior/Middle+]
- Как работает сборщик мусора? [Junior]
- Какие разновидности сборщиков мусора реализованы в виртуальной машине HotSpot? [Middle+]
- Опишите алгоритм работы какого-нибудь сборщика мусора реализованного в виртуальной машине HotSpot.[Middle+]
- Что такое
finalize()? Зачем он нужен? [Junior полезно знать] - Что произойдет со сборщиком мусора, если выполнение метода
finalize()требует ощутимо много времени, или в процессе выполнения будет выброшено исключение? [Junior полезно знать] - Чем отличаются
final,finallyиfinalize()? [Junior] - Что такое Heap и Stack память в Java? Какая разница между ними? [Junior]
- Верно ли утверждение, что примитивные типы данных всегда хранятся в стеке, а экземпляры ссылочных типов данных в куче? [Junior]
- Каким образом передаются переменные в методы, по значению или по ссылке? [Junior]
- Расскажите про приведение типов. Что такое понижение и повышение типа? [Junior]
- Когда в приложении может быть выброшено исключение
ClassCastException? [Junior] - Что такое литералы? [Junior]
- Что такое autoboxing («автоупаковка») в Java и каковы правила упаковки примитивных типов в классы-обертки? [Junior]
- Какие есть особенности класса
String? [Junior] - Что такое «пул строк»? [Junior]
- Почему
Stringнеизменяемый и финализированный класс? [Junior] - Почему
char[]предпочтительнееStringдля хранения пароля? [Junior] - Почему строка является популярным ключом в
HashMapв Java? [Junior] - Что делает метод
intern()в классеString?. [Junior] - Можно ли использовать строки в конструкции
switch? [Junior] - Какая основная разница между
String,StringBuffer,StringBuilder? [Junior] - Что такое класс
Object? Какие в нем есть методы? [Junior] - Расскажите про клонирование объектов. [Junior]
- В чем отличие между поверхностным и глубоким клонированием? [Junior]
- Какой способ клонирования предпочтительней? [Junior]
- Почему метод
clone()объявлен в классеObject, а не в интерфейсеCloneable? [Junior] - Дайте определение понятию «конструктор». [Junior]
- Что такое «конструктор по умолчанию»? [Junior]
- Чем отличаются конструкторы по-умолчанию, копирования и конструктор с параметрами? [Junior]
- Где и как вы можете использовать закрытый конструктор? [Junior]
- Расскажите про классы-загрузчики и про динамическую загрузку классов. [Middle+]
- Что такое Reflection? [Junior]
- Зачем нужен
equals(). Чем он отличается от операции==? [Junior] equals()порождает отношение эквивалентности. Какими свойствами обладает такое отношение?- Если вы хотите переопределить
equals(), какие условия должны удовлетворяться для переопределенного метода? [Junior] - Правила переопределения метода
Object.equals(). [Junior] - Какая связь между
hashCode()иequals()? [Junior] - Если
equals()переопределен, есть ли какие-либо другие методы, которые следует переопределить? [Junior] - Что будет, если переопределить
equals()не переопределяяhashCode()? Какие могут возникнуть проблемы? [Junior] - Каким образом реализованы методы
hashCode()иequals()в классеObject? [Junior] - Для чего нужен метод
hashCode()? [Junior] - Правила переопределения метода
Object.hashCode(). [Junior] - Есть ли какие-либо рекомендации о том, какие поля следует использовать при подсчете
hashCode()? [Junior] - Могут ли у разных объектов быть одинаковые
hashCode()? [Junior] - Если у класса
Point{int x, y;}реализовать методequals(Object that) {(return this.x == that.x && this.y == that.y)}, но сделать хэш-код в видеint hashCode() {return x;}, то будут ли корректно такие точки помещаться и извлекаться изHashSet? [Junior] - Могут ли у разных объектов
(ref0 != ref1)бытьref0.equals(ref1) == true? [Junior] - Могут ли у разных ссылок на один объект
(ref0 == ref1)бытьref0.equals(ref1) == false? [Junior] - Можно ли так реализовать метод
equals(Object that) {return this.hashCode() == that.hashCode()}? [Junior] - В
equals()требуется проверять, что аргументequals(Object that)такого же типа что и сам объект. В чем разница междуthis.getClass() == that.getClass()иthat instanceof MyClass? [Junior] - Можно ли реализовать метод
equals()классаMyClassвот так:class MyClass {public boolean equals(MyClass that) {return this == that;}}? [Junior] - Есть класс
Point{int x, y;}. Почему хэш-код в виде31 * x + yпредпочтительнее чемx + y? [Junior] - Опишите иерархию исключений. [Junior]
- Какие виды исключений в Java вы знаете, чем они отличаются? [Junior]
- Что такое checked и unchecked exception? [Junior]
- Какой оператор позволяет принудительно выбросить исключение? [Junior]
- О чем говорит ключевое слово
throws? [Junior] - Как написать собственное («пользовательское») исключение? [Junior]
- Какие существуют unchecked exception? [Junior]
- Что такое
Error? [Junior] - Что вы знаете о
OutOfMemoryError? [Junior] - Опишите работу блока try-catch-finally. [Junior]
- Что такое механизм try-with-resources? [Junior]
- Возможно ли использование блока try-finally (без
catch)? [Junior] - Может ли один блок
catchотлавливать сразу несколько исключений? [Junior] - Всегда ли исполняется блок
finally?[Junior] - Существуют ли ситуации, когда блок
finallyне будет выполнен? [Junior] - Может ли метод main выбросить исключение во вне и если да, то где будет происходить обработка данного исключения? [Junior]
- Предположим, есть метод, который может выбросить
IOExceptionиFileNotFoundExceptionв какой последовательности должны идти блокиcatch? Сколько блоковcatchбудет выполнено? [Junior] - Что такое generics? [Junior]
- Что такое «интернационализация», «локализация»? [Junior]
- Что такое «коллекция»? [Junior]
- Назовите основные интерфейсы JCF и их реализации.[Junior]
- Расположите в виде иерархии следующие интерфейсы:
List,Set,Map,SortedSet,SortedMap,Collection,Iterable,Iterator,NavigableSet,NavigableMap.[Junior] - Почему
Map— это неCollection, в то время какListиSetявляютсяCollection?[Junior] - В чем разница между классами
java.util.Collectionиjava.util.Collections? [Junior] - Что такое «fail-fast поведение»? [Junior]
- Какая разница между fail-fast и fail-safe? [Middle+]
- Приведите примеры итераторов реализующих поведение fail-safe [Middle+]
- Чем различаются
EnumerationиIterator. [Middle+] - Как между собой связаны
IterableиIterator?[Junior] - Как между собой связаны
Iterable,Iteratorи «for-each»?[Junior] - Сравните
IteratorиListIterator. [Middle+] - Что произойдет при вызове
Iterator.next()без предварительного вызоваIterator.hasNext()? [Junior] - Сколько элементов будет пропущено, если
Iterator.next()будет вызван после 10-ти вызововIterator.hasNext()? [Junior] - Как поведёт себя коллекция, если вызвать
iterator.remove()?[Middle+] - Как поведёт себя уже инстанциированный итератор для
collection, если вызватьcollection.remove()? [Middle+] - Как избежать
ConcurrentModificationExceptionво время перебора коллекции? [Middle+] - Какая коллекция реализует дисциплину обслуживания FIFO? [Junior]
- Какая коллекция реализует дисциплину обслуживания FILO? [Junior]
- Чем отличается
ArrayListотVector? [Junior] - Зачем добавили
ArrayList, если уже былVector? [Junior] - Чем отличается
ArrayListотLinkedList? В каких случаях лучше использовать первый, а в каких второй? [Junior] - Что работает быстрее
ArrayListилиLinkedList?[Junior] - Какое худшее время работы метода
contains()для элемента, который есть вLinkedList? [Junior] - Какое худшее время работы метода
contains()для элемента, который есть вArrayList? [Junior] - Какое худшее время работы метода
add()дляLinkedList? [Junior] - Какое худшее время работы метода
add()дляArrayList? [Junior] - Необходимо добавить 1 млн. элементов, какую структуру вы используете? [Junior]
- Как происходит удаление элементов из
ArrayList? Как меняется в этом случае размерArrayList? [Junior] - Предложите эффективный алгоритм удаления нескольких рядом стоящих элементов из середины списка, реализуемого
ArrayList. [Junior] - Сколько необходимо дополнительной памяти при вызове
ArrayList.add()? [Junior] - Сколько выделяется дополнительно памяти при вызове
LinkedList.add()? [Junior] - Оцените количество памяти на хранение одного примитива типа
byteвLinkedList? [Middle+] - Оцените количество памяти на хранение одного примитива типа
byteвArrayList? [Middle+] - Для
ArrayListили дляLinkedListоперация добавления элемента в середину (list.add(list.size()/2, newElement)) медленнее?[Junior] - В реализации класса
ArrayListесть следующие поля:Object[] elementData,int size. Объясните, зачем хранить отдельноsize, если всегда можно взятьelementData.length?[Junior] - Сравните интерфейсы
QueueиDeque.[Junior] - Кто кого расширяет:
QueueрасширяетDeque, илиDequeрасширяетQueue? [Junior] - Почему
LinkedListреализует иList, иDeque?[Junior] LinkedList— это односвязный, двусвязный или четырехсвязный список? [Junior]- Как перебрать элементы
LinkedListв обратном порядке, не используя медленныйget(index)? - Что позволяет сделать
PriorityQueue? [Junior] Stackсчитается «устаревшим». Чем его рекомендуют заменять? Почему? [Junior]- Зачем нужен
HashMap, если естьHashtable?[Middle+] - В чем разница между
HashMapиIdentityHashMap? Для чего нужнаIdentityHashMap? [Middle+] - В чем разница между
HashMapиWeakHashMap? Для чего используетсяWeakHashMap? [Middle+] - В
WeakHashMapиспользуются WeakReferences. А почему бы не создатьSoftHashMapна SoftReferences? [Middle+] - В
WeakHashMapиспользуются WeakReferences. А почему бы не создатьPhantomHashMapна PhantomReferences? [Middle+] LinkedHashMap- что в нем отLinkedList, а что отHashMap? [Middle+]- В чем проявляется «сортированность»
SortedMap, кроме того, чтоtoString()выводит все элементы по порядку? [Middle+] - Как устроен
HashMap?[Junior] - Согласно Кнуту и Кормену существует две основных реализации хэш-таблицы: на основе открытой адресации и на основе метода цепочек. Как реализована
HashMap? Почему, по вашему мнению, была выбрана именно эта реализация? В чем плюсы и минусы каждого подхода? [Middle+] - Как работает
HashMapпри попытке сохранить в него два элемента по ключам с одинаковымhashCode(), но для которыхequals() == false? [Junior] - Какое начальное количество корзин в
HashMap? [Junior] - Какова оценка временной сложности операций над элементами из
HashMap? Гарантирует лиHashMapуказанную сложность выборки элемента? [Junior] - Возможна ли ситуация, когда
HashMapвыродится в список даже с ключами имеющими разныеhashCode()?[Junior] - В каком случае может быть потерян элемент в
HashMap?[Junior] - Почему нельзя использовать
byte[]в качестве ключа вHashMap?[Junior] - Какова роль
equals()иhashCode()вHashMap?[Junior] - Каково максимальное число значений
hashCode()?[Junior] - Какое худшее время работы метода get(key) для ключа, которого нет в
HashMap? [Junior] - Какое худшее время работы метода get(key) для ключа, который есть в
HashMap? [Junior] - Сколько переходов происходит в момент вызова
HashMap.get(key)по ключу, который есть в таблице? [Junior] - Сколько создается новых объектов, когда вы добавляете новый элемент в
HashMap? [Junior] - Как и когда происходит увеличение количества корзин в
HashMap? [Junior] - Объясните смысл параметров в конструкторе
HashMap(int initialCapacity, float loadFactor). [Junior] - Будет ли работать
HashMap, если все добавляемые ключи будут иметь одинаковыйhashCode()? [Junior] - Как перебрать все ключи
Map? [Junior] - Как перебрать все значения
Map? [Junior] - Как перебрать все пары «ключ-значение» в
Map? [Junior] - В чем отличия
TreeSetиHashSet? [Junior] - Что будет, если добавлять элементы в
TreeSetпо возрастанию? [Junior] - Чем
LinkedHashSetотличается отHashSet? [Junior] - Для
Enumесть специальный классjava.util.EnumSet. Зачем? Чем авторов не устраивалHashSetилиTreeSet? [Middle+] - Какие существуют способы перебирать элементы списка? [Junior]
- Каким образом можно получить синхронизированные объекты стандартных коллекций? [Middle+]
- Как получить коллекцию только для чтения? [Junior]
- Напишите однопоточную программу, которая заставляет коллекцию выбросить
ConcurrentModificationException. [Junior] - Приведите пример, когда какая-либо коллекция выбрасывает
UnsupportedOperationException. [Middle+] - Реализуйте симметрическую разность двух коллекций используя методы
Collection(addAll(...),removeAll(...),retainAll(...)). [Middle+] - Как, используя LinkedHashMap, сделать кэш c «invalidation policy»? [Middle+]
- Как одной строчкой скопировать элементы любой
collectionв массив? [Junior] - Как одним вызовом из
ListполучитьListсо всеми элементами, кроме первых и последних 3-х? [Junior] - Как одной строчкой преобразовать
HashSetвArrayList? [Junior] - Как одной строчкой преобразовать
ArrayListвHashSet? [Junior] - Сделайте
HashSetиз ключейHashMap. [Junior] - Сделайте
HashMapизHashSet<Map.Entry<K, V>>. [Junior]
- Какие нововведения, появились в Java 8 и JDK 8? [Middle+]
- Что такое «лямбда»? Какова структура и особенности использования лямбда-выражения? [Junior]
- К каким переменным есть доступ у лямбда-выражений? [Junior]
- Как отсортировать список строк с помощью лямбда-выражения? [Junior]
- Что такое «ссылка на метод»?[Junior]
- Какие виды ссылок на методы вы знаете?[Junior]
- Объясните выражение
System.out::println. [Junior] - Что такое «функциональные интерфейсы»? [Junior]
- Для чего нужны функциональные интерфейсы
Function<T,R>,DoubleFunction<R>,IntFunction<R>иLongFunction<R>? [Junior] - Для чего нужны функциональные интерфейсы
UnaryOperator<T>,DoubleUnaryOperator,IntUnaryOperatorиLongUnaryOperator?[Junior] - Для чего нужны функциональные интерфейсы
BinaryOperator<T>,DoubleBinaryOperator,IntBinaryOperatorиLongBinaryOperator?[Junior] - Для чего нужны функциональные интерфейсы
Predicate<T>,DoublePredicate,IntPredicateиLongPredicate? [Junior] - Для чего нужны функциональные интерфейсы
Consumer<T>,DoubleConsumer,IntConsumerиLongConsumer? [Junior] - Для чего нужны функциональные интерфейсы
Supplier<T>,BooleanSupplier,DoubleSupplier,IntSupplierиLongSupplier? [Junior] - Для чего нужен функциональный интерфейс
BiConsumer<T,U>? [Junior] - Для чего нужен функциональный интерфейс
BiFunction<T,U,R>? [Junior] - Для чего нужен функциональный интерфейс
BiPredicate<T,U>? [Junior] - Для чего нужны функциональные интерфейсы вида
_To_Function? [Junior] - Для чего нужны функциональные интерфейсы
ToDoubleBiFunction<T,U>,ToIntBiFunction<T,U>иToLongBiFunction<T,U>? [Junior] - Для чего нужны функциональные интерфейсы
ToDoubleFunction<T>,ToIntFunction<T>иToLongFunction<T>? [Junior] - Для чего нужны функциональные интерфейсы
ObjDoubleConsumer<T>,ObjIntConsumer<T>иObjLongConsumer<T>? [Junior] - Что такое
StringJoiner? [Junior] - Что такое
defaultметоды интерфейса? [Junior] - Как вызывать
defaultметод интерфейса в реализующем этот интерфейс классе? [Junior] - Что такое
staticметод интерфейса? [Junior] - Как вызывать
staticметод интерфейса? [Junior] - Что такое
Optional? [Junior] - Что такое
Stream? [Junior] - Какие существуют способы создания стрима? [Junior]
- В чем разница между
CollectionиStream? [Junior] - Для чего нужен метод
collect()в стримах? [Junior] - Для чего в стримах применяются методы
forEach()иforEachOrdered()? [Junior] - Для чего в стримах предназначены методы
map()иmapToInt(),mapToDouble(),mapToLong()? [Junior] - Какова цель метода
filter()в стримах? [Junior] - Для чего в стримах предназначен метод
limit()? [Junior] - Для чего в стримах предназначен метод
sorted()? [Junior] - Для чего в стримах предназначены методы
flatMap(),flatMapToInt(),flatMapToDouble(),flatMapToLong()? - Расскажите о параллельной обработке в Java 8. [Junior]
- Какие конечные методы работы со стримами вы знаете? [Junior]
- Какие промежуточные методы работы со стримами вы знаете? [Junior]
- Как вывести на экран 10 случайных чисел, используя
forEach()? [Junior] - Как можно вывести на экран уникальные квадраты чисел используя метод
map()? [Junior] - Как вывести на экран количество пустых строк с помощью метода
filter()? [Junior] - Как вывести на экран 10 случайных чисел в порядке возрастания? [Junior]
- Как найти максимальное число в наборе? [Junior]
- Как найти минимальное число в наборе? [Junior]
- Как получить сумму всех чисел в наборе? [Junior]
- Как получить среднее значение всех чисел? [Junior]
- Какие дополнительные методы для работы с ассоциативными массивами (maps) появились в Java 8? [Middle+]
- Что такое
LocalDateTime? [Junior] - Что такое
ZonedDateTime? [Junior] - Как получить текущую дату с использованием Date Time API из Java 8? [Junior]
- Как добавить 1 неделю, 1 месяц, 1 год, 10 лет к текущей дате с использованием Date Time API? [Middle+]
- Как получить следующий вторник используя Date Time API? [Middle+]
- Как получить вторую субботу текущего месяца используя Date Time API? [Middle+]
- Как получить текущее время с точностью до миллисекунд используя Date Time API? [Middle+]
- Как получить текущее время по местному времени с точностью до миллисекунд используя Date Time API? [Middle+]
- Как определить повторяемую аннотацию? [Middle+]
- Что такое
Nashorn? [Middle+] - Что такое
jjs? [Middle+] - Какой класс появился в Java 8 для кодирования/декодирования данных? [Middle+]
- Как создать Base64 кодировщик и декодировщик?[Middle+]
- В чём заключается разница между IO и NIO? [Junior]
- Какие особенности NIO вы знаете? [Junior]
- Что такое «каналы»? [Junior]
- Какие существуют виды потоков ввода/вывода? [Junior]
- Назовите основные классы потоков ввода/вывода. [Junior]
- В каких пакетах расположены классы потоков ввода/вывода? [Junior]
- Какие подклассы класса
InputStreamвы знаете, для чего они предназначены? [Junior] - Для чего используется
PushbackInputStream? [Middle+] - Для чего используется
SequenceInputStream? [Middle+] - Какой класс позволяет читать данные из входного байтового потока в формате примитивных типов данных? [Middle+]
- Какие подклассы класса
OutputStreamвы знаете, для чего они предназначены? [Junior] - Какие подклассы класса
Readerвы знаете, для чего они предназначены?[Middle+] - Какие подклассы класса
Writerвы знаете, для чего они предназначены?[Middle+] - В чем отличие класса
PrintWriterотPrintStream? [Middle+] - Чем отличаются и что общего у
InputStream,OutputStream,Reader,Writer? [Middle+] - Какие классы позволяют преобразовать байтовые потоки в символьные и обратно? [Middle+]
- Какие классы позволяют ускорить чтение/запись за счет использования буфера? [Middle+]
- Какой класс предназначен для работы с элементами файловой системы? [Junior]
- Какие методы класса
Fileвы знаете? [Junior] - Что вы знаете об интерфейсе
FileFilter? [Middle+] - Как выбрать все элементы определенного каталога по критерию (например, с определенным расширением)? [Middle+]
- Что вы знаете о
RandomAccessFile? [Middle+] - Какие режимы доступа к файлу есть у
RandomAccessFile? [Middle+] - Какие классы поддерживают чтение и запись потоков в компрессированном формате? [Middle+]
- Существует ли возможность перенаправить потоки стандартного ввода/вывода? [Junior]
- Какой символ является разделителем при указании пути в файловой системе? [Junior]
- Что такое «абсолютный путь» и «относительный путь»? [Junior]
- Что такое «символьная ссылка»? [Middle+]
- Что такое «сериализация»? [Junior]
- Опишите процесс сериализации/десериализации с использованием
Serializable. [Junior] - Как изменить стандартное поведение сериализации/десериализации? [Middle+]
- Как исключить поля из сериализации? [Junior]
- Что обозначает ключевое слово
transient? [Junior] - Какое влияние оказывают на сериализуемость модификаторы полей
staticиfinal[Junior] - Как не допустить сериализацию? [Middle+]
- Как создать собственный протокол сериализации? [Middle+]
- Какая роль поля
serialVersionUIDв сериализации? [Middle+] - Когда стоит изменять значение поля
serialVersionUID? [Junior] - В чем проблема сериализации Singleton? [Middle+]
- Какие существуют способы контроля за значениями десериализованного объекта [Middle+]
- Расскажите о модели памяти Java? [Junior]
- Что такое «потокобезопасность»? [Junior]
- В чём разница между «конкуренцией» и «параллелизмом»? [Junior]
- Что такое «кооперативная многозадачность»? Какой тип многозадачности использует Java? Чем обусловлен этот выбор? [Junior]
- Что такое ordering, as-if-serial semantics, sequential consistency, visibility, atomicity, happens-before, mutual exclusion, safe publication? [Middle+]
- Чем отличается процесс от потока? [Junior]
- Что такое «зелёные потоки» и есть ли они в Java? [Middle+]
- Каким образом можно создать поток? [Junior]
- Чем различаются
ThreadиRunnable? [Junior] - В чём заключается разница между методами
start()иrun()? [Junior] - Как принудительно запустить поток? [Junior]
- Что такое «монитор» в Java? [Junior]
- Дайте определение понятию «синхронизация». [Junior]
- Какие существуют способы синхронизации в Java? [Junior]
- В каких состояниях может находиться поток? [Junior]
- Можно ли создавать новые экземпляры класса, пока выполняется
static synchronizedметод? [Junior] - Зачем может быть нужен
privateмьютекс? [Junior] - Как работают методы
wait()иnotify()/notifyAll()? [Junior] - В чем разница между
notify()иnotifyAll()? [Junior] - Почему методы
wait()иnotify()вызываются только в синхронизированном блоке? [Junior] - Чем отличается работа метода
wait()с параметром и без параметра? [Junior] - Чем отличаются методы
Thread.sleep()иThread.yield()? [Junior] - Как работает метод
Thread.join()?[Junior] - Что такое deadlock? [Junior]
- Что такое livelock? [Junior]
- Как проверить, удерживает ли поток монитор определённого ресурса? [Junior]
- На каком объекте происходит синхронизация при вызове
static synchronizedметода? [Junior] - Для чего используется ключевое слово
volatile,synchronized,transient,native? [Junior] - В чём различия между
volatileи Atomic переменными? [Middle+] - В чём заключаются различия между
java.util.concurrent.Atomic*.compareAndSwap()иjava.util.concurrent.Atomic*.weakCompareAndSwap(). [Middle+] - Что значит «приоритет потока»? [Junior]
- Что такое «потоки-демоны»? [Middle+]
- Можно ли сделать основной поток программы демоном? [Middle+]
- Что значит «усыпить» поток? [Junior]
- Чем отличаются два интерфейса
RunnableиCallable? [Junior] - Что такое
FutureTask? [Middle+] - В чем заключаются различия между
CyclicBarrierиCountDownLatch? [Middle+] - Что такое race condition? [Junior]
- Существует ли способ решения проблемы race condition? [Junior]
- Как остановить поток? [Junior]
- Почему не рекомендуется использовать метод
Thread.stop()? [Middle+] - Что происходит, когда в потоке выбрасывается исключение? [Middle+]
- В чем разница между
interrupted()иisInterrupted()? [Junior] - Что такое «пул потоков»? [Junior]
- Какого размера должен быть пул потоков? [Junior]
- Что будет, если очередь пула потоков уже заполнена, но подаётся новая задача? [Junior]
- В чём заключается различие между методами
submit()иexecute()у пула потоков? [Junior] - В чем заключаются различия между cтеком (stack) и кучей (heap) с точки зрения многопоточности? [Junior]
- Как поделиться данными между двумя потоками? [Junior]
- Какой параметр запуска JVM используется для контроля размера стека потока? [Junior]
- Как получить дамп потока? [Middle+]
- Что такое ThreadLocal-переменная? [Middle+]
- Назовите различия между
synchronizedиReentrantLock? [Junior] - Что такое
ReadWriteLock? [Middle+] - Что такое «блокирующий метод»? [Junior]
- Что такое «фреймворк Fork/Join»? [Middle+]
- Что такое
Semaphore? [Junior] - Что такое double checked locking Singleton? [Middle+]
- Как создать потокобезопасный Singleton? [Middle+]
- Чем полезны неизменяемые объекты? [Junior]
- Что такое busy spin? [Middle+]
- Перечислите принципы, которым вы следуете в многопоточном программировании? [Junior]
- Какое из следующих утверждений о потоках неверно? [Junior]
- Даны 3 потока Т1, Т2 и Т3? Как реализовать выполнение в последовательности Т1, Т2, Т3? [Junior]
- Напишите минимальный неблокирующий стек (всего два метода —
push()иpop()). [Middle+] - Напишите минимальный неблокирующий стек (всего два метода —
push()иpop()) с использованиемSemaphore. [Middle+] - Напишите минимальный неблокирующий ArrayList (всего четыре метода —
add(),get(),remove(),size()). [Middle+] - Напишите потокобезопасную реализацию класса с неблокирующим методом
BigInteger next(), который возвращает элементы последовательности:[1, 2, 4, 8, 16, ...]. [Middle+] - Напишите простейший многопоточный ограниченный буфер с использованием
synchronized. [Middle+] - Напишите простейший многопоточный ограниченный буфер с использованием
ReentrantLock. [Middle+]
- Что такое «сервлет»?
- В чем заключаются преимущества технологии сервлетов над CGI (Common Gateway Interface)?
- Какова структура веб-проекта?
- Что такое «контейнер сервлетов»?
- Зачем нужны сервера приложений, если есть контейнеры сервлетов?
- Как контейнер сервлетов управляет жизненным циклом сервлета, когда и какие методы вызываются?
- Что такое «дескриптор развертывания»?
- Какие действия необходимо проделать при создании сервлетов?
- В каком случае требуется переопределять метод
service()? - Есть ли смысл определять для сервлета конструктор? Каким образом лучше инициализировать данные?
- Почему необходимо переопределить только
init()метод без аргументов? - Какие наиболее распространенные задачи выполняются в контейнере сервлетов?
- Что вы знаете о сервлетных фильтрах?
- Зачем в сервлетах используются различные listener?
- Когда стоит использовать фильтры сервлетов, а когда слушателей?
- Как реализовать запуск сервлета одновременно с запуском приложения?
- Как обработать в приложении исключения, выброшенные другим сервлетом?
- Что представляет собой
ServletConfig? - Что представляет собой
ServletContext? - В чем отличия
ServletContextиServletConfig? - Для чего нужен интерфейс
ServletResponse? - Для чего нужен интерфейс
ServletRequest? - Что такое
Request Dispatcher? - Как из одного сервлета вызвать другой сервлет?
- Чем отличается
sendRedirect()отforward()? - Для чего используются атрибуты сервлетов и как происходит работа с ними?
- Каким образом можно допустить в сервлете deadlock?
- Как получить реальное расположение сервлета на сервере?
- Как получить информацию о сервере из сервлета?
- Как получить IP адрес клиента на сервере?
- Какие классы-обертки для сервлетов вы знаете?
- В чем отличия
GenericServletиHttpServlet? - Почему
HttpServletкласс объявлен как абстрактный? - Какие основные методы присутствуют в классе
HttpServlet? - Стоит ли волноваться о многопоточной безопасности работая с сервлетами?
- Какой метод HTTP не является неизменяемым?
- Какие есть методы отправки данных с клиента на сервер?
- В чем разница между методами
GETиPOST? - В чем разница между
PrintWriterиServletOutputStream? - Можно ли одновременно использовать в сервлете
PrintWriterиServletOutputStream? - Расскажите об интерфейсе
SingleThreadModel. - Что означает URL encoding? Как это осуществить в Java?
- Какие различные методы управления сессией в сервлетах вы знаете?
- Что такое cookies?
- Какие методы для работы с cookies предусмотрены в сервлетах?
- Что такое URL Rewriting?
- Зачем нужны и чем отличаются методы
encodeURL()иencodeRedirectURL()? - Что такое «сессия»?
- Как уведомить объект в сессии, что сессия недействительна или закончилась?
- Какой существует эффективный способ удостоверится, что все сервлеты доступны только для пользователя с верной сессией?
- Как мы можем обеспечить transport layer security для нашего веб приложения?
- Как организовать подключение к базе данных, обеспечить журналирование в сервлете?
- Какие основные особенности появились в спецификации Servlet 3?
- Какие способы аутентификации доступны сервлету?
- Что такое Java Server Pages (JSP)?
- Зачем нужен JSP?
- Опишите, как обрабатываются JSP страницы, начиная от запроса к серверу, заканчивая ответом пользователю.
- Расскажите об этапах (фазах) жизненного цикла JSP.
- Расскажите о методах жизненного цикла JSP.
- Какие методы жизненного цикла JSP могут быть переопределены?
- Как можно предотвратить прямой доступ к JSP странице из браузера?
- Какая разница между динамическим и статическим содержимым JSP?
- Как закомментировать код в JSP?
- Какие существуют основные типы тегов JSP?
- Что вы знаете о действиях JSP (Action tag и JSP Action Elements).
- Взаимодействие JSP - сервлет - JSP.
- Какие области видимости переменных существуют в JSP?
- Какие неявные, внутренние объекты и методы есть на JSP странице?
- Какие неявные объекты не доступны в обычной JSP странице?
- Что вы знаете о
PageContextи какие преимущества его использования? - Как сконфигурировать параметры инициализации для JSP?
- Почему не рекомендуется использовать скриплеты (скриптовые элементы) в JSP?
- Можно ли определить класс внутри JSP страницы?
- Что вы знаете о Языке выражений JSP (JSP Expression Language – EL)?
- Какие типы EL операторов вы знаете?
- Назовите неявные, внутренние объекты JSP EL и их отличия от объектов JSP.
- Как отключить возможность использования EL в JSP?
- Как узнать тип HTTP метода используя JSP EL?
- Что такое JSTL (JSP Standard tag library)?
- Из каких групп тегов состоит библиотека JSTL?
- Какая разница между
<c:set>и<jsp:useBean>? - Чем отличается
<c:import>от<jsp:include>и директивы<%@include %>? - Как можно расширить функциональность JSP?
- Что вы знаете о написании пользовательских JSP тегов?
- Приведите пример использования собственных тегов.
- Как сделать перенос строки в HTML средствами JSP?
- Почему не нужно конфигурировать стандартные JSP теги в
web.xml? - Как можно обработать ошибки JSP страниц?
- Как происходит обработка ошибок с помощью JSTL?
- Как конфигурируется JSP в дескрипторе развертывания.
- Можно ли использовать Javascript на JSP странице?
- Всегда ли создается объект сессии на JSP странице, можно ли отключить его создание?
- Какая разница между
JSPWriterи сервлетнымPrintWriter? - Опишите общие практические принципы работы с JSP.
- Что такое «база данных»? [Junior]
- Что такое «система управления базами данных»? [Junior]
- Что такое «реляционная модель данных»? [Junior]
- Дайте определение терминам «простой», «составной» (composite), «потенциальный» (candidate) и «альтернативный» (alternate) ключ. [Junior]
- Что такое «первичный ключ» (primary key)? Каковы критерии его выбора? [Junior]
- Что такое «внешний ключ» (foreign key)? [Junior]
- Что такое «нормализация»? [Junior]
- Какие существуют нормальные формы? [Middle+]
- Что такое «денормализация»? Для чего она применяется?[Junior]
- Какие существуют типы связей в базе данных? Приведите примеры. [Junior]
- Что такое «индексы»? Для чего их используют? В чём заключаются их преимущества и недостатки? [Junior]
- Какие типы индексов существуют? [Middle+]
- В чем отличие между кластерными и некластерными индексами? [Middle+]
- Имеет ли смысл индексировать данные, имеющие небольшое количество возможных значений? [Middle+]
- Когда полное сканирование набора данных выгоднее доступа по индексу? [Middle+]
- Что такое «транзакция»? [Junior]
- Назовите основные свойства транзакции. [Junior]
- Какие существуют уровни изолированности транзакций? [Middle+]
- Какие проблемы могут возникать при параллельном доступе с использованием транзакций? [Middle+]
- Что такое «SQL»? [Junior]
- Какие существуют операторы SQL? [Junior]
- Что означает
NULLв SQL? [Junior] - Что такое «временная таблица»? Для чего она используется? [Junior]
- Что такое «представление» (view) и для чего оно применяется? [Middle+]
- Каков общий синтаксис оператора
SELECT? [Junior] - Что такое
JOIN? [Junior] - Какие существуют типы
JOIN? [Junior] - Что лучше использовать
JOINили подзапросы? [Junior] - Для чего используется оператор
HAVING? [Junior] - В чем различие между операторами
HAVINGиWHERE? [Junior] - Для чего используется оператор
ORDER BY? [Junior] - Для чего используется оператор
GROUP BY? [Junior] - Как
GROUP BYобрабатывает значениеNULL? [Junior] - В чем разница между операторами
GROUP BYиDISTINCT? [Junior] - Перечислите основные агрегатные функции. [Junior]
- В чем разница между
COUNT(*)иCOUNT({column})? [Junior] - Что делает оператор
EXISTS? [Middle+] - Для чего используются операторы
IN,BETWEEN,LIKE?[Junior] - Для чего применяется ключевое слово
UNION? [Middle+] - Какие ограничения на целостность данных существуют в SQL? [Junior]
- Какие отличия между ограничениями
PRIMARYиUNIQUE? [Junior] - Может ли значение в столбце, на который наложено ограничение
FOREIGN KEY, равнятьсяNULL?[Junior] - Как создать индекс? [Junior]
- Что делает оператор
MERGE? [Middle+] - В чем отличие между операторами
DELETEиTRUNCATE? [Junior] - Что такое «хранимая процедура»? [Junior]
- Что такое «триггер»? [Junior]
- Что такое «курсор»? [Middle+]
- Опишите разницу типов данных
DATETIMEиTIMESTAMP. [Junior] - Для каких числовых типов недопустимо использовать операции сложения/вычитания? [Junior]
- Какое назначение у операторов
PIVOTиUNPIVOTв Transact-SQL?[Middle+] - Расскажите об основных функциях ранжирования в Transact-SQL.[Middle+]
- Для чего используются операторы
INTERSECT,EXCEPTв Transact-SQL?[Middle+] - Напишите запрос... [Middle+]
- Что такое JDBC? [Junior]
- В чем заключаются преимущества использования JDBC? [Junior]
- Что из себя представляет JDBC URL? [Junior]
- Из каких частей стоит JDBC? [Junior]
- Перечислите основные типы данных используемые в JDBC. Как они связаны с типами Java? [Junior]
- Опишите основные этапы работы с базой данных с использованием JDBC. [Junior]
- Как зарегистрировать драйвер JDBC? [Middle+]
- Как установить соединение с базой данных? [Junior]
- Какие уровни изоляции транзакций поддерживаются в JDBC? [Middle+]
- При помощи чего формируются запросы к базе данных? [Junior]
- Чем отличается Statement от PreparedStatement? [Junior]
- Как осуществляется запрос к базе данных и обработка результатов? [Junior]
- Как вызвать хранимую процедуру? [Middle+]
- Как закрыть соединение с базой данных? [Middle+]
- Spring Core [Junior]
- Spring MVC [Junior]
- Spring Validator [Junior]
- Spring Boot [Junior]
- Spring Security [Junior]
- Spring REST [Junior]
- JWT [Junior]
- Что такое «модульное тестирование»? [Junior]
- Что такое «интеграционное тестирование»? [Junior]
- Чем интеграционное тестирование отличается от модульного? [Junior]
- Какие существуют виды тестовых объектов? [Junior]
- Чем stub отличается от mock? [Junior]
- Что такое «фикстуры»? [Junior]
- Какие аннотации фикстур существуют в JUnit? [Junior]
- Для чего в JUnit используется аннотация
@Ignore? [Junior]
- Какие существуют типы логов?
- Из каких частей состоит система журналирования log4j?
- Что такое Logger в log4j?
- Что такое Appender в log4j?
- Что такое Layout в log4j?
- Перечислите уровни журналирования в log4j? Назовите порядок их приоритетности.
- Какие существуют способы конфигурирования log4j?
- Что такое UML?
- Что такое «диаграмма», «нотация» и «метамодель» в UML?
- Какие существуют типы диаграмм?
- Какие виды отношений существуют в структурной диаграмме классов?
- Что такое XML?
- Что такое DTD?
- Чем well-formed XML отличается от valid XML?
- Что такое «пространство имен» в XML?
- Что такое XSD? В чём его преимущества перед XML DTD?
- Какие типы существуют в XSD?
- Какие вы знаете методы чтения XML? Опишите сильные и слабые стороны каждого метода.
- Когда следует использовать DOM, а когда SAX, StAX анализаторы??
- Какие вы знаете способы записи XML?
- Что такое JAXP?
- Что такое XSLT?
- Что такое «шаблон проектирования»? [Middle+]
- Назовите основные характеристики шаблонов. [Middle+]
- Типы шаблонов проектирования. [Middle+]
- Приведите примеры основных шаблонов проектирования. [Middle+]
- Приведите примеры порождающих шаблонов проектирования. [Middle+]
- Приведите примеры структурных шаблонов проектирования. [Middle+]
- Приведите примеры поведенческих шаблонов проектирования. [Middle+]
- Что такое «антипаттерн»? Какие антипаттерны вы знаете? [Middle+]
- Что такое Dependency Injection? [Middle+]
- Что такое «HTML»? [Junior]
- Что такое «XHTML»? [Middle+]
- Что такое
DOCTYPEи зачем он нужен? [Middle+] - Для чего предназначен тег
<head>? [Junior] - Чем отличается
<div>от<span>? [Junior] - Как обозначаются комментарии в HTML? [Junior]
- Каким образом задаётся адрес документа, на который следует перейти? [Junior]
- Как сделать ссылку на адрес электронной почты? [Junior]
- Для чего предназначен тег
<em>? [Junior] - Для чего предназначены теги
<ol>,<ul>,<li>? [Junior] - Для чего предназначены теги
<dl>,<dt>,<dd>? [Junior] - Для чего предназначены теги
<tr>,<th>,<td>? [Junior] - Обязательно ли писать атрибут
altв теге<img>? [Junior] - В каком регистре лучше писать HTML-код? [Junior]
- Что такое «мнемоника (entity)»? [Junior]
- Что такое «CSS»?
- Как в CSS обозначаются комментарии?
- Что такое «селектор»?
- Перечислите основные виды селекторов.
- Что такое псевдокласс?
- Какие существуют селекторы аттрибутов?
- В чем разница между
#myи.my? - В чем разница между
marginиpadding? - В чем заключается разница между значениями
0иautoв свойствеmargin? - Какое свойство задает цвет фона?
- Как убрать подчеркивание для всех ссылок на странице?
- Для чего используется свойство
clear? - Как сделать жирным текст во всех элементах
<p>? - Как задать красный цвет для всех элементов, имеющих класс
red?
- Что такое WWW? [Junior]
- Что такое W3C? [Middle+]
- Какие существуют уровни модели OSI? [Junior]
- Что такое TCP/IP? [Junior]
- Что такое UDP? [Junior]
- Чем отличаются TCP и UDP? [Junior]
- Что такое протокол передачи данных? Какие протоколы вы знаете? [Junior]
- Что такое HTTP и HTTPS? Чем они отличаются? [Junior]
- Что такое FTP? [Junior]
- Чем отличаются методы GET и POST? [Junior]
- Что такое MIME тип? [Middle+]
- Что такое Web server? [Junior]
- Что такое Web application? [Junior]
- Что такое Application server? [Junior]
- Чем отличаются Web server и Application server? [Junior]
- Что такое AJAX? Как принципиально устроена эта технология? [Middle+]
- Что такое WebSocket? [Middle+]
- Что такое JSON? [Junior]
- Что такое JSON схема? [Junior]
- Что такое cookies? [Junior]
- Что такое «сессия»? [Junior]
- Что такое «авторизация» и «аутентификация»? Чем они отличаются? [Junior]
- 4 толковых канала на Youtube про технические собеседования
- A list of fancy questions I've been asked during the interviews I had
- Job interview in English: как готовиться и что отвечать
- Senior Engineer в поисках работы. О задачах на технических собеседованиях и теоретических вопросах
- What to ask an interviewer during a tech interview
- Spring Boot Interview Questions
- Top Spring Framework Interview Questions
- Spring Interview Questions