☕️ Попробовать подобрать или реализовать самостоятельно другой итератор, работающий по принципу fail-safe.
☕️ Использовать ConcurrentHashMap и CopyOnWriteArrayList.
☕️ Преобразовать список в массив и перебирать массив.
☕️ Блокировать изменения списка на время перебора с помощью блока synchronized.
Отрицательная сторона последних двух вариантов - ухудшение производительности.
☕️ Использовать ConcurrentHashMap и CopyOnWriteArrayList.
☕️ Преобразовать список в массив и перебирать массив.
☕️ Блокировать изменения списка на время перебора с помощью блока synchronized.
Отрицательная сторона последних двух вариантов - ухудшение производительности.
Для различных операционных систем символ разделителя различается. Для Windows это \, для Linux - /.
В Java получить разделитель для текущей операционной системы можно через обращение к статическому полю File.separator.
В Java получить разделитель для текущей операционной системы можно через обращение к статическому полю File.separator.
JSP расширяет технологию сервлетов, обеспечивая возможность создания динамических страниц с HTML-подобным синтаксисом.
Хотя создание представлений поддерживается и в сервлетах, но большая часть любой веб-страницы является статической, поэтому код сервлета в таком случае получается чересчур перегруженным, замусоренным и поэтому при его написании легко допустить ошибку.
Еще одним преимуществом JSP является горячее развертывание - возможность заменить одну страницу на другую непосредственно в контейнере без необходимости перекомпилировать весь проект или перезапускать сервер.
Однако рекомендуется избегать написания серьёзной бизнес-логики в JSP и использовать страницу только в качестве представления.
Хотя создание представлений поддерживается и в сервлетах, но большая часть любой веб-страницы является статической, поэтому код сервлета в таком случае получается чересчур перегруженным, замусоренным и поэтому при его написании легко допустить ошибку.
Еще одним преимуществом JSP является горячее развертывание - возможность заменить одну страницу на другую непосредственно в контейнере без необходимости перекомпилировать весь проект или перезапускать сервер.
Однако рекомендуется избегать написания серьёзной бизнес-логики в JSP и использовать страницу только в качестве представления.
👍1
☕️ InputStream и его наследники - совокупность для получения байтовых данных из различных источников;
☕️ OutputStream и его наследники - набор классов, определяющих потоковый байтовый вывод;
☕️ Reader и его наследники определяют потоковый ввод символов Unicode;
☕️ Writer и его наследники определяют потоковый вывод символов Unicode.
☕️ OutputStream и его наследники - набор классов, определяющих потоковый байтовый вывод;
☕️ Reader и его наследники определяют потоковый ввод символов Unicode;
☕️ Writer и его наследники определяют потоковый вывод символов Unicode.
👍1
HTTP метод называется неизменяемым, если он на один и тот же запрос всегда возвращает одинаковый результат. HTTP методы GET, PUT, DELETE, HEAD и OPTIONS являются неизменяемыми, поэтому необходимо реализовывать приложение так, чтобы эти методы возвращали одинаковый результат постоянно. К изменяемым методам относится метод POST, который и используется для реализации чего-либо, что изменяется при каждом запросе.
К примеру, для доступа к статической HTML-странице используется метод GET, т.к. он всегда возвращает одинаковый результат. При необходимости сохранять какую-либо информацию, например в базе данных, нужно использовать POST метод.
К примеру, для доступа к статической HTML-странице используется метод GET, т.к. он всегда возвращает одинаковый результат. При необходимости сохранять какую-либо информацию, например в базе данных, нужно использовать POST метод.
👍3
Nashorn - это движок JavaScript, разрабатываемый на Java компанией Oracle. Призван дать возможность встраивать код JavaScript в приложения Java. В сравнении с Rhino, который поддерживается Mozilla Foundation, Nashorn обеспечивает от 2 до 10 раз более высокую производительность, так как он компилирует код и передает байт-код виртуальной машине Java непосредственно в памяти. Nashorn умеет компилировать код JavaScript и генерировать классы Java, которые загружаются специальным загрузчиком. Так же возможен вызов кода Java прямо из JavaScript.
👍9
#вопросы_с_собеседований
Для чего используется PushbackInputStream?
Разновидность буферизации, обеспечивающая чтение байта с последующим его возвратом в поток. Класс
У класса есть дополнительный метод
Для чего используется PushbackInputStream?
Разновидность буферизации, обеспечивающая чтение байта с последующим его возвратом в поток. Класс
PushbackInputStream
представляет механизм «заглянуть» во входной поток и увидеть, что оттуда поступит в следующий момент, не извлекая информации.У класса есть дополнительный метод
unread()
.👍10
Какой результат выполнения следующего кода:
Anonymous Quiz
21%
true
27%
false
25%
Ошибка компиляции
28%
Не знаю
👍8🌭4😁3
Какие классы позволяют ускорить чтение/запись за счет использования буфера?
•
•
•
•
BufferedInputStream(InputStream in)
/ BufferedInputStream(InputStream in, int size)
,•
BufferedOutputStream(OutputStream out)
/BufferedOutputStream(OutputStream out, int size)
,•
BufferedReader(Reader r)
/BufferedReader(Reader in, int sz),
• BufferedWriter(Writer out)
/BufferedWriter(Writer out, int sz)
👍12
Корректно ли такое выражение?
Anonymous Quiz
45%
Да
45%
Нет, будет ошибка компиляции
9%
Нет, будет ошибка во время выполнения
👍13👏1😁1
👍1