Вопросы и ответы к интервью Java разработчика
Batchfile
6,223
179 commits
updated Sep 1, 2026
Свёрстанные вопросы и ответы by Victoria Demidova
Telegram Bot by cmmttd























final?main()?abstract?final?private-переменной класса? Если, да, то каким образом?static?throws?assert?finalize()? Зачем он нужен?finalize() требует ощутимо много времени, или в процессе выполнения будет выброшено исключение?final, finally и finalize()?ClassCastException?String?String неизменяемый и финализированный класс?char[] предпочтительнее String для хранения пароля?HashMap в Java?intern() в классе String?.switch?String, StringBuffer, StringBuilder?Object? Какие в нем есть методы?clone() объявлен в классе Object, а не в интерфейсе Cloneable?equals(). Чем он отличается от операции ==?equals() порождает отношение эквивалентности. Какими свойствами обладает такое отношение?equals(), какие условия должны удовлетворяться для переопределенного метода?Object.equals().hashCode() и equals()?equals() переопределен, есть ли какие-либо другие методы, которые следует переопределить?equals() не переопределяя hashCode()? Какие могут возникнуть проблемы?hashCode() и equals() в классе Object?hashCode()?Object.hashCode().hashCode()?hashCode()?Point{int x, y;} реализовать метод equals(Object that) {(return this.x == that.x && this.y == that.y)}, но сделать хэш-код в виде int hashCode() {return x;}, то будут ли корректно такие точки помещаться и извлекаться из HashSet?(ref0 != ref1) быть ref0.equals(ref1) == true?(ref0 == ref1) быть ref0.equals(ref1) == false?equals(Object that) {return this.hashCode() == that.hashCode()}?equals() требуется проверять, что аргумент equals(Object that) такого же типа что и сам объект. В чем разница между this.getClass() == that.getClass() и that instanceof MyClass?equals() класса MyClass вот так: class MyClass {public boolean equals(MyClass that) {return this == that;}}?Point{int x, y;}. Почему хэш-код в виде 31 * x + y предпочтительнее чем x + y?throws?Error?OutOfMemoryError?catch)?catch отлавливать сразу несколько исключений?finally?finally не будет выполнен?IOException и FileNotFoundException в какой последовательности должны идти блоки catch? Сколько блоков catch будет выполнено?List, Set, Map, SortedSet, SortedMap, Collection, Iterable, Iterator, NavigableSet, NavigableMap.Map — это не Collection, в то время как List и Set являются Collection?java.util.Collection и java.util.Collections?Enumeration и Iterator.Iterable и Iterator?Iterable, Iterator и «for-each»?Iterator и ListIterator.Iterator.next() без предварительного вызова Iterator.hasNext()?Iterator.next() будет вызван после 10-ти вызовов Iterator.hasNext()?iterator.remove()?collection, если вызвать collection.remove()?ConcurrentModificationException во время перебора коллекции?ArrayList от Vector?ArrayList, если уже был Vector?ArrayList от LinkedList? В каких случаях лучше использовать первый, а в каких второй?ArrayList или LinkedList?contains() для элемента, который есть в LinkedList?contains() для элемента, который есть в ArrayList?add() для LinkedList?add() для ArrayList?ArrayList? Как меняется в этом случае размер ArrayList?ArrayList.ArrayList.add()?LinkedList.add()?byte в LinkedList?byte в ArrayList?ArrayList или для LinkedList операция добавления элемента в середину (list.add(list.size()/2, newElement)) медленнее?ArrayList есть следующие поля: Object[] elementData, int size. Объясните, зачем хранить отдельно size, если всегда можно взять elementData.length?Queue и Deque.Queue расширяет Deque, или Deque расширяет Queue?LinkedList реализует и List, и Deque?LinkedList — это односвязный, двусвязный или четырехсвязный список?LinkedList в обратном порядке, не используя медленный get(index)?PriorityQueue?Stack считается «устаревшим». Чем его рекомендуют заменять? Почему?HashMap, если есть Hashtable?HashMap и IdentityHashMap? Для чего нужна IdentityHashMap?HashMap и WeakHashMap? Для чего используется WeakHashMap?WeakHashMap используются WeakReferences. А почему бы не создать SoftHashMap на SoftReferences?WeakHashMap используются WeakReferences. А почему бы не создать PhantomHashMap на PhantomReferences?LinkedHashMap - что в нем от LinkedList, а что от HashMap?SortedMap, кроме того, что toString() выводит все элементы по порядку?HashMap?HashMap? Почему, по вашему мнению, была выбрана именно эта реализация? В чем плюсы и минусы каждого подхода?HashMap при попытке сохранить в него два элемента по ключам с одинаковым hashCode(), но для которых equals() == false?HashMap?HashMap? Гарантирует ли HashMap указанную сложность выборки элемента?HashMap выродится в список даже с ключами имеющими разные hashCode()?HashMap?byte[] в качестве ключа в HashMap?equals() и hashCode() в HashMap?hashCode()?HashMap?HashMap?HashMap не обязан реализовывать интерфейс Comparable, двусвязный список всегда удается преобразовать в красно-черное-дерево?HashMap.get(key) по ключу, который есть в таблице?HashMap?HashMap?HashMap(int initialCapacity, float loadFactor).HashMap, если все добавляемые ключи будут иметь одинаковый hashCode()?Map?Map?Map?TreeSet и HashSet?TreeSet по возрастанию?LinkedHashSet отличается от HashSet?Enum есть специальный класс java.util.EnumSet. Зачем? Чем авторов не устраивал HashSet или TreeSet?ConcurrentModificationException.UnsupportedOperationException.Collection (addAll(...), removeAll(...), retainAll(...)).collection в массив?List получить List со всеми элементами, кроме первых и последних 3-х?HashSet в ArrayList?ArrayList в HashSet?HashSet из ключей HashMap.HashMap из HashSet<Map.Entry<K, V>>.System.out::println.Function<T,R>, DoubleFunction<R>, IntFunction<R> и LongFunction<R>?UnaryOperator<T>, DoubleUnaryOperator, IntUnaryOperator и LongUnaryOperator?BinaryOperator<T>, DoubleBinaryOperator, IntBinaryOperator и LongBinaryOperator?Predicate<T>, DoublePredicate, IntPredicate и LongPredicate?Consumer<T>, DoubleConsumer, IntConsumer и LongConsumer?Supplier<T>, BooleanSupplier, DoubleSupplier, IntSupplier и LongSupplier?BiConsumer<T,U>?BiFunction<T,U,R>?BiPredicate<T,U>?_To_Function?ToDoubleBiFunction<T,U>, ToIntBiFunction<T,U> и ToLongBiFunction<T,U>?ToDoubleFunction<T>, ToIntFunction<T> и ToLongFunction<T>?ObjDoubleConsumer<T>, ObjIntConsumer<T> и ObjLongConsumer<T>?StringJoiner?default методы интрефейса?default метод интерфейса в реализующем этот интерфейс классе?static метод интерфейса?static метод интерфейса?Optional?Stream?Collection и Stream?collect() в стримах?forEach() и forEachOrdered()?map() и mapToInt(), mapToDouble(), mapToLong()?filter() в стримах?limit()?sorted()?flatMap(), flatMapToInt(), flatMapToDouble(), flatMapToLong()?forEach()?map()?filter()?LocalDateTime?ZonedDateTime?Nashorn?jjs?InputStream вы знаете, для чего они предназначены?PushbackInputStream?SequenceInputStream?OutputStream вы знаете, для чего они предназначены?Reader вы знаете, для чего они предназначены?Writer вы знаете, для чего они предназначены?PrintWriter от PrintStream?InputStream, OutputStream, Reader, Writer?File вы знаете?FileFilter?RandomAccessFile?RandomAccessFile?Serializable.transient?static и finalserialVersionUID в сериализации?serialVersionUID?Thread и Runnable?start() и run()?static synchronized метод?private мьютекс?wait() и notify()/notifyAll()?notify() и notifyAll()?wait() и notify() вызываются только в синхронизированном блоке?wait() с параметром и без параметра?Thread.sleep() и Thread.yield()?Thread.join()?static synchronized метода?volatile, synchronized, transient, native?volatile и Atomic переменными?java.util.concurrent.Atomic*.compareAndSwap() и java.util.concurrent.Atomic*.weakCompareAndSwap().Runnable и Callable?FutureTask?CyclicBarrier и CountDownLatch?Thread.stop()?interrupted() и isInterrupted()?submit() и execute() у пула потоков?synchronized и ReentrantLock?ReadWriteLock?Semaphore?push() и pop()).push() и pop()) с использованием Semaphore.add(), get(), remove(), size()).BigInteger next(), который возвращает элементы последовательности: [1, 2, 4, 8, 16, ...].synchronized.ReentrantLock.service()?init() метод без аргументов?ServletConfig?ServletContext?ServletContext и ServletConfig?ServletResponse?ServletRequest?Request Dispatcher?sendRedirect() от forward()?GenericServlet и HttpServlet?HttpServlet класс объявлен как абстрактный?HttpServlet?GET и POST?PrintWriter и ServletOutputStream?PrintWriter и ServletOutputStream?SingleThreadModel.encodeURL() и encodeRedirectURL()?PageContext и какие преимущества его использования?<c:set> и <jsp:useBean>?<c:import> от <jsp:include> и директивы <%@include %>?web.xml?JSPWriter и сервлетным PrintWriter?NULL в SQL?SELECT?JOIN?JOIN?JOIN или подзапросы?HAVING?HAVING и WHERE?ORDER BY?GROUP BY?GROUP BY обрабатывает значение NULL?GROUP BY и DISTINCT?COUNT(*) и COUNT({column})?EXISTS?IN, BETWEEN, LIKE?UNION?PRIMARY и UNIQUE?FOREIGN KEY, равняться NULL?MERGE?DELETE и TRUNCATE?DATETIME и TIMESTAMP.PIVOT и UNPIVOT в Transact-SQL?INTERSECT, EXCEPT в Transact-SQL?@Ignore?DOCTYPE и зачем он нужен?<head>?<div> от <span>?<em>?<ol>, <ul>, <li>?<dl>, <dt>, <dd>?<tr>, <th>, <td>?alt в теге <img>?#my и .my?margin и padding?0 и auto в свойстве margin?clear?<p>?red?Архитектура компонентов
Kafka API
Kafka Consumer
Другие вопросы
Сравнение с другими компонентами и системами
95 followers · starred Jul 2020
17 followers · starred Mar 2021
0 followers · starred Apr 2025
6 followers · starred Feb 2020
Вопросы и ответы к интервью Java разработчика
Batchfile
6,223
179 commits
updated Sep 1, 2026
Свёрстанные вопросы и ответы by Victoria Demidova
Telegram Bot by cmmttd























final?main()?abstract?final?private-переменной класса? Если, да, то каким образом?static?throws?assert?finalize()? Зачем он нужен?finalize() требует ощутимо много времени, или в процессе выполнения будет выброшено исключение?final, finally и finalize()?ClassCastException?String?String неизменяемый и финализированный класс?char[] предпочтительнее String для хранения пароля?HashMap в Java?intern() в классе String?.switch?String, StringBuffer, StringBuilder?Object? Какие в нем есть методы?clone() объявлен в классе Object, а не в интерфейсе Cloneable?equals(). Чем он отличается от операции ==?equals() порождает отношение эквивалентности. Какими свойствами обладает такое отношение?equals(), какие условия должны удовлетворяться для переопределенного метода?Object.equals().hashCode() и equals()?equals() переопределен, есть ли какие-либо другие методы, которые следует переопределить?equals() не переопределяя hashCode()? Какие могут возникнуть проблемы?hashCode() и equals() в классе Object?hashCode()?Object.hashCode().hashCode()?hashCode()?Point{int x, y;} реализовать метод equals(Object that) {(return this.x == that.x && this.y == that.y)}, но сделать хэш-код в виде int hashCode() {return x;}, то будут ли корректно такие точки помещаться и извлекаться из HashSet?(ref0 != ref1) быть ref0.equals(ref1) == true?(ref0 == ref1) быть ref0.equals(ref1) == false?equals(Object that) {return this.hashCode() == that.hashCode()}?equals() требуется проверять, что аргумент equals(Object that) такого же типа что и сам объект. В чем разница между this.getClass() == that.getClass() и that instanceof MyClass?equals() класса MyClass вот так: class MyClass {public boolean equals(MyClass that) {return this == that;}}?Point{int x, y;}. Почему хэш-код в виде 31 * x + y предпочтительнее чем x + y?throws?Error?OutOfMemoryError?catch)?catch отлавливать сразу несколько исключений?finally?finally не будет выполнен?IOException и FileNotFoundException в какой последовательности должны идти блоки catch? Сколько блоков catch будет выполнено?List, Set, Map, SortedSet, SortedMap, Collection, Iterable, Iterator, NavigableSet, NavigableMap.Map — это не Collection, в то время как List и Set являются Collection?java.util.Collection и java.util.Collections?Enumeration и Iterator.Iterable и Iterator?Iterable, Iterator и «for-each»?Iterator и ListIterator.Iterator.next() без предварительного вызова Iterator.hasNext()?Iterator.next() будет вызван после 10-ти вызовов Iterator.hasNext()?iterator.remove()?collection, если вызвать collection.remove()?ConcurrentModificationException во время перебора коллекции?ArrayList от Vector?ArrayList, если уже был Vector?ArrayList от LinkedList? В каких случаях лучше использовать первый, а в каких второй?ArrayList или LinkedList?contains() для элемента, который есть в LinkedList?contains() для элемента, который есть в ArrayList?add() для LinkedList?add() для ArrayList?ArrayList? Как меняется в этом случае размер ArrayList?ArrayList.ArrayList.add()?LinkedList.add()?byte в LinkedList?byte в ArrayList?ArrayList или для LinkedList операция добавления элемента в середину (list.add(list.size()/2, newElement)) медленнее?ArrayList есть следующие поля: Object[] elementData, int size. Объясните, зачем хранить отдельно size, если всегда можно взять elementData.length?Queue и Deque.Queue расширяет Deque, или Deque расширяет Queue?LinkedList реализует и List, и Deque?LinkedList — это односвязный, двусвязный или четырехсвязный список?LinkedList в обратном порядке, не используя медленный get(index)?PriorityQueue?Stack считается «устаревшим». Чем его рекомендуют заменять? Почему?HashMap, если есть Hashtable?HashMap и IdentityHashMap? Для чего нужна IdentityHashMap?HashMap и WeakHashMap? Для чего используется WeakHashMap?WeakHashMap используются WeakReferences. А почему бы не создать SoftHashMap на SoftReferences?WeakHashMap используются WeakReferences. А почему бы не создать PhantomHashMap на PhantomReferences?LinkedHashMap - что в нем от LinkedList, а что от HashMap?SortedMap, кроме того, что toString() выводит все элементы по порядку?HashMap?HashMap? Почему, по вашему мнению, была выбрана именно эта реализация? В чем плюсы и минусы каждого подхода?HashMap при попытке сохранить в него два элемента по ключам с одинаковым hashCode(), но для которых equals() == false?HashMap?HashMap? Гарантирует ли HashMap указанную сложность выборки элемента?HashMap выродится в список даже с ключами имеющими разные hashCode()?HashMap?byte[] в качестве ключа в HashMap?equals() и hashCode() в HashMap?hashCode()?HashMap?HashMap?HashMap не обязан реализовывать интерфейс Comparable, двусвязный список всегда удается преобразовать в красно-черное-дерево?HashMap.get(key) по ключу, который есть в таблице?HashMap?HashMap?HashMap(int initialCapacity, float loadFactor).HashMap, если все добавляемые ключи будут иметь одинаковый hashCode()?Map?Map?Map?TreeSet и HashSet?TreeSet по возрастанию?LinkedHashSet отличается от HashSet?Enum есть специальный класс java.util.EnumSet. Зачем? Чем авторов не устраивал HashSet или TreeSet?ConcurrentModificationException.UnsupportedOperationException.Collection (addAll(...), removeAll(...), retainAll(...)).collection в массив?List получить List со всеми элементами, кроме первых и последних 3-х?HashSet в ArrayList?ArrayList в HashSet?HashSet из ключей HashMap.HashMap из HashSet<Map.Entry<K, V>>.System.out::println.Function<T,R>, DoubleFunction<R>, IntFunction<R> и LongFunction<R>?UnaryOperator<T>, DoubleUnaryOperator, IntUnaryOperator и LongUnaryOperator?BinaryOperator<T>, DoubleBinaryOperator, IntBinaryOperator и LongBinaryOperator?Predicate<T>, DoublePredicate, IntPredicate и LongPredicate?Consumer<T>, DoubleConsumer, IntConsumer и LongConsumer?Supplier<T>, BooleanSupplier, DoubleSupplier, IntSupplier и LongSupplier?BiConsumer<T,U>?BiFunction<T,U,R>?BiPredicate<T,U>?_To_Function?ToDoubleBiFunction<T,U>, ToIntBiFunction<T,U> и ToLongBiFunction<T,U>?ToDoubleFunction<T>, ToIntFunction<T> и ToLongFunction<T>?ObjDoubleConsumer<T>, ObjIntConsumer<T> и ObjLongConsumer<T>?StringJoiner?default методы интрефейса?default метод интерфейса в реализующем этот интерфейс классе?static метод интерфейса?static метод интерфейса?Optional?Stream?Collection и Stream?collect() в стримах?forEach() и forEachOrdered()?map() и mapToInt(), mapToDouble(), mapToLong()?filter() в стримах?limit()?sorted()?flatMap(), flatMapToInt(), flatMapToDouble(), flatMapToLong()?forEach()?map()?filter()?LocalDateTime?ZonedDateTime?Nashorn?jjs?InputStream вы знаете, для чего они предназначены?PushbackInputStream?SequenceInputStream?OutputStream вы знаете, для чего они предназначены?Reader вы знаете, для чего они предназначены?Writer вы знаете, для чего они предназначены?PrintWriter от PrintStream?InputStream, OutputStream, Reader, Writer?File вы знаете?FileFilter?RandomAccessFile?RandomAccessFile?Serializable.transient?static и finalserialVersionUID в сериализации?serialVersionUID?Thread и Runnable?start() и run()?static synchronized метод?private мьютекс?wait() и notify()/notifyAll()?notify() и notifyAll()?wait() и notify() вызываются только в синхронизированном блоке?wait() с параметром и без параметра?Thread.sleep() и Thread.yield()?Thread.join()?static synchronized метода?volatile, synchronized, transient, native?volatile и Atomic переменными?java.util.concurrent.Atomic*.compareAndSwap() и java.util.concurrent.Atomic*.weakCompareAndSwap().Runnable и Callable?FutureTask?CyclicBarrier и CountDownLatch?Thread.stop()?interrupted() и isInterrupted()?submit() и execute() у пула потоков?synchronized и ReentrantLock?ReadWriteLock?Semaphore?push() и pop()).push() и pop()) с использованием Semaphore.add(), get(), remove(), size()).BigInteger next(), который возвращает элементы последовательности: [1, 2, 4, 8, 16, ...].synchronized.ReentrantLock.service()?init() метод без аргументов?ServletConfig?ServletContext?ServletContext и ServletConfig?ServletResponse?ServletRequest?Request Dispatcher?sendRedirect() от forward()?GenericServlet и HttpServlet?HttpServlet класс объявлен как абстрактный?HttpServlet?GET и POST?PrintWriter и ServletOutputStream?PrintWriter и ServletOutputStream?SingleThreadModel.encodeURL() и encodeRedirectURL()?PageContext и какие преимущества его использования?<c:set> и <jsp:useBean>?<c:import> от <jsp:include> и директивы <%@include %>?web.xml?JSPWriter и сервлетным PrintWriter?NULL в SQL?SELECT?JOIN?JOIN?JOIN или подзапросы?HAVING?HAVING и WHERE?ORDER BY?GROUP BY?GROUP BY обрабатывает значение NULL?GROUP BY и DISTINCT?COUNT(*) и COUNT({column})?EXISTS?IN, BETWEEN, LIKE?UNION?PRIMARY и UNIQUE?FOREIGN KEY, равняться NULL?MERGE?DELETE и TRUNCATE?DATETIME и TIMESTAMP.PIVOT и UNPIVOT в Transact-SQL?INTERSECT, EXCEPT в Transact-SQL?@Ignore?DOCTYPE и зачем он нужен?<head>?<div> от <span>?<em>?<ol>, <ul>, <li>?<dl>, <dt>, <dd>?<tr>, <th>, <td>?alt в теге <img>?#my и .my?margin и padding?0 и auto в свойстве margin?clear?<p>?red?Архитектура компонентов
Kafka API
Kafka Consumer
Другие вопросы
Сравнение с другими компонентами и системами
95 followers · starred Jul 2020
17 followers · starred Mar 2021
0 followers · starred Apr 2025
6 followers · starred Feb 2020