Перечисление (Enumeration) в Java представляют собой класс, состоящий из констант. Появились в языке для удобной реализации перечисляемых типов данных. Например, светофор имеет три цвета: красный, желтый и зеленый. Вместо того, чтобы создавать отдельный статический класс с константами типа Color, у которых есть поле name в которое уже записано имя цвета. [crayon-642595724da1e405272810/] Конструкция получилась очень неудобной. Ко всему прочему при такой реализации вы можете создать экземпляр класса TrafficLight, а это противоречит понятию перечисляемых типов. Давайте перепишем TrafficLight с помощью перечисляемых классов и …
Метка: java
Как сказал один мудрец: вечно смотреть можно на три вещи: как течет вода, как горит огонь и как кто-то пишет очередную стать о DI в Spring Boot. Сегодня я сделаю попытку коротко описать всю эту петрушку. DI (Dependency Injection, внедрение зависимости) – процесс при котором построение одного объекта, предоставляется внешнему объекту. Или точнее это то место, где зависимость будет внедрена другим объектом. Понятнее будет на примере. Пусть у нас есть класс “Автомобиль” у него есть поле класса “Двигатель”. Место где …
Скорее всего в своей жизни вы не один раз проходили собеседования в различные компании и, возможно, на самые разнообразные позиции. Если сильно абстрагироваться от конкретной позиции, то собеседование представляет собой обычное интервью – вам задают вопросы, вы отвечаете ( кстати, хорошо если вы тоже задаете вопросы) и знакомитесь с компанией, а она с вами. В этой статье мы не будем рассуждать высокими и абстрактными материями, напротив, рассмотрим конкретное интервью на позицию java-разработчика. Для этой цели я лично посетил несколько интервью в …
В недавней статье мы рассматривали такую структура данных как стек. Если вы не знаете что такое стек, то обязательно перейдите по ссылке и почитайте, потому что сегодня мы разберем решение одной интересной задачи с сайта codeforces.com с использованием реализованного ранее нами стека. Вот условие задачи: В автобусе характеров есть n рядов сидений, в каждом по 2 места. В i-м ряду ширина обоих сидений равна w_i сантиметров. Все числа w_i различны. Изначально автобус пустой. На каждой из 2n остановок в автобус садится …
В понимании работы очереди нет ничего сложного. Мы практически каждый день сталкиваемся с очередями, например, в магазине у кассы. Как вы уже поняли, очередь отличается от стека порядком извлечения элементов. FIFO (First In First Out) – первый пришел, первый ушел. Все по честному. Ну, конечно если это не очередь в отечественных поликлиниках, где можно использовать волшебные слова “Я только спросить”. Ну да ладно, вернемся все таки к теме. Так же как и в повседневной жизни, очереди активно используются в работе самой операционной …