Java Learning
18.8K subscribers
1.61K photos
1 video
3 files
987 links
№ 5079899194

Обучающий канал по Java

Ссылка для друга - https://t.iss.one/+ZEYYht6-46w5MDM6

По всем вопросам @mascarov_valentin

Реклама на бирже - https://telega.in/c/Java_per_month
Download Telegram
👍27🔥5
Как преобразовать цветное изображение в черно-белое

Иногда может потребоваться преобразовать изображение в двоичное. Другими словами, вам нужно преобразовать цветное изображение или изображение в оттенках серого в черно-белое изображение.

Более подробно о работе с изображениями вы можете ознакомиться здесь.
👍258
#Вопросы_с_собеседования

Какой результат будет выведен в консоль?

Ответ:
This is abstract class constructor
This is demo class constructor

Вопрос на понимание абстрактных классов. Создать экземпляр абстрактного класса нельзя, но он все же имеет конструктор. Более того любой класс имеет конструктор, даже если он не задан явно (он будет добавлен при компиляции). Здесь важно понимать, что при создании экземпляра наследника, самой первой строкой в конструкторе класса наследника будет вызван конструктор класса родителя.
👍36
#Вопросы_с_собеседования

Что такое Java Classloader? Перечислите и объясните назначение трех типов загрузчиков классов.

Загрузчик классов Java — это часть среды выполнения Java, которая загружает классы по запросу (отложенная загрузка) в JVM (виртуальную машину Java). Классы могут быть загружены из локальной файловой системы, удаленной файловой системы или даже из Интернета.

При запуске JVM используются три загрузчика классов: 1. Bootstrap Classloader: загружает основной файл java API rt.jar из папки. 2. Extension Classloader: загружает файлы JAR из папки. 3. System classloader
👍25
Округление дробных чисел до целых

1) Math.ceil(n) — возвращает наименьшее целое число, которое больше или равно аргумента n.
2) Math.floor(n) — возвращает наибольшее целое число, которое меньше или равно аргументу n.
3) Math.round(n) — возвращает целое число, ближайшее к аргументу n (округляет n).
👍25
#Вопросы_с_собеседования

Могут ли нестатические методы перегрузить статические?

Да. В итоге получится два разных метода. Статический будет принадлежать классу и будет доступен через его имя, а нестатический будет принадлежать конкретному объекту и доступен через вызов метода этого объекта.
👍29😱4🤔2
#Вопросы_с_собеседования

Какая проблема возникнет с этим кодом?

Ответ: Данный код не с компилируется.

Этот вопрос на знание иерархии исключений, в данном случае FileNotFoundException унаследован от IOException, первый catch будет перехватывать все исключения и в следующий блок catch управление не будет передано.
👍23😢8
Метод subList()

Метод subList() класса java.util.AbstractList используется для возврата представления части этого списка между указанным fromIndex, включительно, и toIndex, исключая. (Если fromIndex и toIndex равны, возвращаемый список пуст).

Подробнее можно почитать здесь.
👍10😢1
👍3😢1
😱19👍14🤔7😢1
randomUUID()

java.util.UUID — это еще один класс Java, который можно использовать для генерации случайной строки. Он предлагает статический метод randomUUID(), который возвращает случайную буквенно-цифровую строку из 32 символов.

Теперь следует отметить, что случайно сгенерированная строка также имеет случайные вхождения «_». С этим можно легко справиться, используя метод replaceAll() в конце, чтобы заменить все '_' пустой строкой.
👍241😱1
#Вопросы_с_собеседования

Как перебрать элементы LinkedList в обратном порядке, не используя медленный get(index)?

Для этого в LinkedList есть обратный итератор, который можно получить вызва метод descendingIterator().
👍28
#Вопросы_с_собеседования

Какие виды ссылок на методы вы знаете?

☕️ ссылки на статические методы;
☕️ ссылки на методы экземпляра;
☕️ ссылки на конструкторы;
☕️ ссылки на обобщенные (шаблонные) методы.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
Зачем нужны профили в Spring?

При разработке приложений мы обычно имеем дело с несколькими средами, такими как Dev, QA и Prod. Свойства конфигурации для этих сред отличаются.

Например, мы можем использовать встроенную базу данных H2 для Dev, но Prod может использовать проприетарную базу данных Oracle или DB2. Даже если СУБД одинакова во всех средах, URL-адреса определенно будут разными.

Чтобы сделать это простым и понятным, Spring предоставляет профили, помогающие разделить конфигурацию для каждой среды.Таким образом, вместо того, чтобы поддерживать это программно, свойства можно хранить в отдельных файлах, таких как application-dev.properties и application-prod.properties. По умолчанию application.properties указывает на текущий активный профиль с помощью spring.profiles.active, чтобы подобрать правильную конфигурацию.

Больше узнать о профилях в Spring можно по ссылке: https://www.baeldung.com/spring-profiles
👍9
#Вопросы_с_собеседования

Как не допустить сериализацию?

Чтобы не допустить автоматическую сериализацию можно переопределить private методы для создания исключительной ситуации NotSerializableException.

Любая попытка записать или прочитать этот объект теперь приведет к возникновению исключительной ситуации.
👍23
#Вопросы_с_собеседования

Каковы ограничения для полей и методов интерфейса?

Интерфейс может объявлять поля, но они неявно объявляются как public, static и final, даже если вы не указываете эти модификаторы. Следовательно, вы не можете явно определить поле интерфейса как приватное. По сути, интерфейс может иметь только поля-константы, а не поля-экземпляры.

Все методы интерфейса также неявно объявлены public. Они также могут быть (неявно) abstract или default.
👍14