#Вопросы_с_собеседования
❓Напишите программу на Java для вставки данного элемента в очередь с приоритетами
Ответ на картинке.
❓Напишите программу на Java для вставки данного элемента в очередь с приоритетами
Ответ на картинке.
👍13🤔4
#вопросы_с_собеседований
Какие существуют типы автовайринга Spring Bean?
В среде Spring существует четыре типа автовайринга.
✔️ autowire byName
✔️ autowire byType
✔️ autowire by constructor
✔️ autowiring by
До Spring 3.1 также поддерживалась autowire by autodetect, которая была похожа на автовайринг по конструктору или по типу. Для получения более подробной информации об этих опциях можете обратиться к статье.
Какие существуют типы автовайринга Spring Bean?
В среде Spring существует четыре типа автовайринга.
✔️ autowire byName
✔️ autowire byType
✔️ autowire by constructor
✔️ autowiring by
@Autowired and @Qualifier annotationsДо Spring 3.1 также поддерживалась autowire by autodetect, которая была похожа на автовайринг по конструктору или по типу. Для получения более подробной информации об этих опциях можете обратиться к статье.
Digitalocean
Spring @Autowired Annotation | DigitalOcean
Technical tutorials, Q&A, events — This is an inclusive place where developers can find or lend support and discover new ways to contribute to the community.
👍6❤1
#Вопросы_с_собеседования
❓Что такое Instance Variable?
Instance Variable — переменная, которая определена внутри класса, и она существует вплоть до того момента, пока существует объект.
Пример — класс
❓Что такое Instance Variable?
Instance Variable — переменная, которая определена внутри класса, и она существует вплоть до того момента, пока существует объект.
Пример — класс
Bee, в котором есть две переменные nectarCapacity и maxNectarCapacity.👍6❤1
👍5😢5
Как между собой связаны Iterable и Iterator?
Интерфейс
Интерфейс
Iterable имеет только один метод - iterator(), который возвращает Iterator.👍12
Object[] vs custom Class
Код с Object абсолютно не читабельный, когда приходится работать с возвращаемым значением в другом месте.То есть, чтобы понять что же хранит в себе возвращаемое значение — нужно вернуться в класс вызова и читать комментарии к методу, если же, конечно, они есть, а если нет, вникать в код, что не очень эффективно. Собственно, я сам этим иногда грешу, когда очень спешу. С этим можно смириться, если это очень редко, но, все же, в таких ситуациях лучше создавать новый класс. Облегчите жизнь тем, кто придет после вас.
Код с Object абсолютно не читабельный, когда приходится работать с возвращаемым значением в другом месте.То есть, чтобы понять что же хранит в себе возвращаемое значение — нужно вернуться в класс вызова и читать комментарии к методу, если же, конечно, они есть, а если нет, вникать в код, что не очень эффективно. Собственно, я сам этим иногда грешу, когда очень спешу. С этим можно смириться, если это очень редко, но, все же, в таких ситуациях лучше создавать новый класс. Облегчите жизнь тем, кто придет после вас.
👍12
#Вопросы_с_собеседования
❓Напишите минимальный неблокирующий стек (всего два метода — push() и pop()) с использованием Semaphore
Ответ на картинке.
❓Напишите минимальный неблокирующий стек (всего два метода — push() и pop()) с использованием Semaphore
Ответ на картинке.
👍17
Какие подклассы класса Reader вы знаете, для чего они предназначены?
•
•
•
•
•
•
•
•
•
•
•
Reader - абстрактный класс, описывающий символьный ввод;•
BufferedReader - буферизованный входной символьный поток;•
CharArrayReader - входной поток, который читает из символьного массива;•
FileReader - входной поток, читающий файл;•
FilterReader - абстрактный класс, предоставляющий интерфейс для классов-надстроек;•
InputStreamReader - входной поток, транслирующий байты в символы;•
LineNumberReader - входной поток, подсчитывающий строки;•
PipedReader - входной канал;•
PushbackReader - входной поток, позволяющий возвращать символы обратно в поток;•
StringReader - входной поток, читающий из строки.👍15🔥1
Что означает переопределение метода в Java (override)?
Anonymous Quiz
76%
Изменение поведения метода класса относительно родительского
5%
Изменение поведения метода класса относительно дочернего
15%
Несколько методов с одинаковыми названиями, но разными наборами параметров
2%
Несколько разных классов с одинаковым методом
2%
Узнать ответ
👍22
Java Bean
JavaBeans - это стандартный подход к созданию переносимых и повторно используемых компонентов. Они представляют собой классы, которые следуют определенным соглашениям и обеспечивают удобный способ управления состоянием и поведением объектов.
Основные характеристики JavaBeans:
1. Класс должен быть публичным и иметь открытый конструктор без аргументов.
2. Приватные поля класса должны быть доступны с помощью геттеров и сеттеров (
3. Класс должен быть сериализуемым, то есть должен реализовывать интерфейс
JavaBeans - это стандартный подход к созданию переносимых и повторно используемых компонентов. Они представляют собой классы, которые следуют определенным соглашениям и обеспечивают удобный способ управления состоянием и поведением объектов.
Основные характеристики JavaBeans:
1. Класс должен быть публичным и иметь открытый конструктор без аргументов.
2. Приватные поля класса должны быть доступны с помощью геттеров и сеттеров (
getter и setter методы).3. Класс должен быть сериализуемым, то есть должен реализовывать интерфейс
Serializable.JavaBeans также могут иметь дополнительные свойства, такие как события и методы уведомления, которые позволяют другим компонентам реагировать на изменения состояния.👍10❤4
Какова структура веб-проекта?
src/main/java Исходники приложения/библиотекиsrc/main/resources Ресурсные файлы приложения/библиотекиsrc/main/filters Файлы сервлетных фильтровsrc/main/webapp Исходники веб-приложенияsrc/test/java Исходники тестовsrc/test/resources Ресурсные файлы тестовsrc/test/filters Тесты сервлетных фильтровsrc/it Интеграционные тестыsrc/assembly Описание сборкиsrc/site СайтLICENSE.txt Лицензия проектаNOTICE.txt Замечания и определения библиотек зависимостей.README.txt Описание проекта👍22❤4🔥1
#Вопросы_с_собеседования
Что такое «анонимные классы»? Где они применяются?
Это вложенный локальный класс без имени, который разрешено декларировать в любом месте обрамляющего класса, разрешающем размещение выражений. Создание экземпляра анонимного класса происходит одновременно с его объявлением. В зависимости от местоположения анонимный класс ведет себя как статический либо как нестатический вложенный класс - в нестатическом контексте появляется окружающий его экземпляр.
Анонимные классы имеют несколько ограничений:
• Их использование разрешено только в одном месте программы - месте его создания;
• Применение возможно только в том случае, если после порождения экземпляра нет необходимости на него ссылаться;
• Реализует лишь методы своего интерфейса или суперкласса, т.е. не может объявлять каких-либо новых методов, так как для доступа к ним нет поименованного типа.
Анонимные классы обычно применяются для:
• создания объекта функции (function object), например, реализация интерфейса
• создания объекта процесса (process object), такого как экземпляры классов
• в статическом методе генерации;
• инициализации открытого статического поля
Что такое «анонимные классы»? Где они применяются?
Это вложенный локальный класс без имени, который разрешено декларировать в любом месте обрамляющего класса, разрешающем размещение выражений. Создание экземпляра анонимного класса происходит одновременно с его объявлением. В зависимости от местоположения анонимный класс ведет себя как статический либо как нестатический вложенный класс - в нестатическом контексте появляется окружающий его экземпляр.
Анонимные классы имеют несколько ограничений:
• Их использование разрешено только в одном месте программы - месте его создания;
• Применение возможно только в том случае, если после порождения экземпляра нет необходимости на него ссылаться;
• Реализует лишь методы своего интерфейса или суперкласса, т.е. не может объявлять каких-либо новых методов, так как для доступа к ним нет поименованного типа.
Анонимные классы обычно применяются для:
• создания объекта функции (function object), например, реализация интерфейса
Comparator;• создания объекта процесса (process object), такого как экземпляры классов
Thread, Runnable и подобных;• в статическом методе генерации;
• инициализации открытого статического поля
final, которое соответствует сложному перечислению типов, когда для каждого экземпляра в перечислении требуется отдельный подкласс.👍9
Метод delete()
Удаляет символы в подстроке данной строки буфера (StringBuffer). Подстрока начинается с указанного начального индекса и распространяется до символа конечного индекса, или до конца StringBuffer, если такого символа не существует.
Другими словами метод позволяет удалить символы из строки, начиная и заканчивая указанными индексами.
Если start (начальный индекс) равен end (конечный индекс), то изменения не производятся.
Параметры:
• start — начальный индекс, включительно;
• end — конечный индекс, не включая.
Удаляет символы в подстроке данной строки буфера (StringBuffer). Подстрока начинается с указанного начального индекса и распространяется до символа конечного индекса, или до конца StringBuffer, если такого символа не существует.
Другими словами метод позволяет удалить символы из строки, начиная и заканчивая указанными индексами.
Если start (начальный индекс) равен end (конечный индекс), то изменения не производятся.
Параметры:
• start — начальный индекс, включительно;
• end — конечный индекс, не включая.
👍18
Разбираемся с GraalVM, AOT и JIT
Если вы хотите разобраться, что такое GraalVM, как он работает, и в чем различия между Just-In-Time (JIT) компиляцией и Ahead-Of-Time (AOT) компиляцией, то это руководство — именно то, что вы искали.
Смотреть статью
Если вы хотите разобраться, что такое GraalVM, как он работает, и в чем различия между Just-In-Time (JIT) компиляцией и Ahead-Of-Time (AOT) компиляцией, то это руководство — именно то, что вы искали.
Смотреть статью
👍6
#Вопросы_с_собеседования
❓Как разбить строку на подстроки по заданному разделителю?
Мы можем использовать метод split(String regex) для разделения строки на массив символов, используя в качестве разделителя регулярное выражение.
Метод split(String regex, int numOfStrings) является перегруженным методом для разделения строки на заданное количество строк. Мы можем использовать обратную черту для использования специальных символов регулярных выражений в качестве обычных символов.
❓Как разбить строку на подстроки по заданному разделителю?
Мы можем использовать метод split(String regex) для разделения строки на массив символов, используя в качестве разделителя регулярное выражение.
Метод split(String regex, int numOfStrings) является перегруженным методом для разделения строки на заданное количество строк. Мы можем использовать обратную черту для использования специальных символов регулярных выражений в качестве обычных символов.
🔥3👍1