Какое назначение команды LIMIT в SQL?
Anonymous Quiz
1%
Фильтрует строки, возвращаемые оператором SELECT
0%
Упорядочивает результаты в порядке возрастания или убывания
0%
Группирует строки с одинаковыми значениями
97%
Ограничивает количество строк, возвращаемых оператором SELECT
2%
Посмотреть ответ
👍5✍4🎉3
Команды Git. Часть 5.4.
Распространенная команда git cherry-pick.
На собеседовании начинающего Java разработчика могут спросить - Что такое cherry-pick? Ответ нужно знать, потому что это очень нужная команда Git в процессе разработки ПО.
Команда git cherry-pick позволяет применять коммиты из одной ветки в другую. Это может быть полезно, если вы хотите взять определенный коммит из одной ветки и применить его в другой ветке без переноса всей истории коммитов.
Чтобы использовать git cherry-pick, нужно выполнить следующие шаги:
1) Перейти в ту ветку, в которую мы хотим применить коммит.
2) Выполнить команду git cherry-pick <commit-hash>,
где <commit-hash> - это хэш-код коммита, который мы хотим применить.
Давайте посмотрим на пример использования git cherry-pick. Предположим, что у нас есть две ветки: master и feature. Мы хотим применить коммит с хэш-кодом 123abc из ветки feature в ветку master. Выполним следующие команды:
– git checkout master (переключились на ветку master)
– git cherry-pick 123abc (применяем коммит с хэш-кодом 123abc в текущую ветку master, на которой находимся)
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
Распространенная команда git cherry-pick.
На собеседовании начинающего Java разработчика могут спросить - Что такое cherry-pick? Ответ нужно знать, потому что это очень нужная команда Git в процессе разработки ПО.
Команда git cherry-pick позволяет применять коммиты из одной ветки в другую. Это может быть полезно, если вы хотите взять определенный коммит из одной ветки и применить его в другой ветке без переноса всей истории коммитов.
Чтобы использовать git cherry-pick, нужно выполнить следующие шаги:
1) Перейти в ту ветку, в которую мы хотим применить коммит.
2) Выполнить команду git cherry-pick <commit-hash>,
где <commit-hash> - это хэш-код коммита, который мы хотим применить.
Давайте посмотрим на пример использования git cherry-pick. Предположим, что у нас есть две ветки: master и feature. Мы хотим применить коммит с хэш-кодом 123abc из ветки feature в ветку master. Выполним следующие команды:
– git checkout master (переключились на ветку master)
– git cherry-pick 123abc (применяем коммит с хэш-кодом 123abc в текущую ветку master, на которой находимся)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6✍5🔥2❤1
Необычный случай из практики с Git.
Один из коллег, разрабатывающий на Java, столкнулся с неожиданной проблемой. Работая над новой функциональностью, он случайно внес изменения в чужую ветку, забыв создать свою. Это не сразу заметили, и спустя несколько дней работа нескольких разработчиков переплелась в одну ветку с конфликтующими изменениями.
Сначала он пытался самостоятельно разобраться, но это только усугубляло ситуацию. Он попытался вернуться к предыдущим коммитам, использовал git reset, git revert, но это лишь увеличивало хаос. Наконец, он понял, что без помощи не обойтись, и обратился к опытному коллеге.
Они вместе рассмотрели историю коммитов и использовали git cherry-pick, чтобы выбрать нужные изменения и перенести их в отдельную ветку. Затем, с помощью git rebase, аккуратно объединили изменения, решив конфликты и восстановив порядок.
Эта ситуация показала, насколько важно создавать отдельные ветки для каждой задачи и следить за своими изменениями. Она также подчеркнула важность командной работы и своевременного обращения за помощью, когда проблема становится слишком сложной для одного человека.
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
Один из коллег, разрабатывающий на Java, столкнулся с неожиданной проблемой. Работая над новой функциональностью, он случайно внес изменения в чужую ветку, забыв создать свою. Это не сразу заметили, и спустя несколько дней работа нескольких разработчиков переплелась в одну ветку с конфликтующими изменениями.
Сначала он пытался самостоятельно разобраться, но это только усугубляло ситуацию. Он попытался вернуться к предыдущим коммитам, использовал git reset, git revert, но это лишь увеличивало хаос. Наконец, он понял, что без помощи не обойтись, и обратился к опытному коллеге.
Они вместе рассмотрели историю коммитов и использовали git cherry-pick, чтобы выбрать нужные изменения и перенести их в отдельную ветку. Затем, с помощью git rebase, аккуратно объединили изменения, решив конфликты и восстановив порядок.
Эта ситуация показала, насколько важно создавать отдельные ветки для каждой задачи и следить за своими изменениями. Она также подчеркнула важность командной работы и своевременного обращения за помощью, когда проблема становится слишком сложной для одного человека.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5✍3👨💻3
Какое из нижеуказанных выражений валидно для создания LocalDate объекта?
Anonymous Quiz
12%
LocalDate.of(2024)
11%
LocalDate.with(2024.8.30)
13%
LocalDate.of(2024.0.30)
57%
LocalDate.now().plusDays(5)
7%
Посмотреть ответ
✍6🔥3👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁12✍4👨💻3
Функциональный интерфейс в Java. Часть 1.
Термин функциональный интерфейс был введен в Java 8. Это интерфейс, который содержит только один абстрактный (не реализованный) метод. Может содержать стандартные и статические, которые имеют реализацию, в дополнение к одному нереализованному.
Вот пример:
public interface MyFunctionalInterface {
public void execute();
}
Вышеуказанный интерфейс содержит только один метод, и этот метод не имеет реализации.
Обычно интерфейс не содержит реализации методов, которые он объявляет, но он может содержать реализации в методах по умолчанию (default) или в статических (static).
На картинке приведен еще один пример с реализациями некоторых методов. Этот интерфейс все еще считается функциональным, поскольку он содержит только один не реализованный метод.
К функциональному интерфейсу можно добавить аннотацию @FunctionalInterface. Это не обязательно, но при наличии данной аннотации код не скомпилируется, если будет больше или меньше, чем 1 абстрактный метод.
Основное назначение функционального интерфейса – это использование в лямбда выражениях и method reference.
Рекомендуется добавлять @FunctionalInterface. Это позволит использовать интерфейс в лямбда выражениях, не остерегаясь того, что кто-то добавит в интерфейс новый абстрактный метод и он перестанет быть функциональным.
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
Термин функциональный интерфейс был введен в Java 8. Это интерфейс, который содержит только один абстрактный (не реализованный) метод. Может содержать стандартные и статические, которые имеют реализацию, в дополнение к одному нереализованному.
Вот пример:
public interface MyFunctionalInterface {
public void execute();
}
Вышеуказанный интерфейс содержит только один метод, и этот метод не имеет реализации.
Обычно интерфейс не содержит реализации методов, которые он объявляет, но он может содержать реализации в методах по умолчанию (default) или в статических (static).
На картинке приведен еще один пример с реализациями некоторых методов. Этот интерфейс все еще считается функциональным, поскольку он содержит только один не реализованный метод.
К функциональному интерфейсу можно добавить аннотацию @FunctionalInterface. Это не обязательно, но при наличии данной аннотации код не скомпилируется, если будет больше или меньше, чем 1 абстрактный метод.
Основное назначение функционального интерфейса – это использование в лямбда выражениях и method reference.
Рекомендуется добавлять @FunctionalInterface. Это позволит использовать интерфейс в лямбда выражениях, не остерегаясь того, что кто-то добавит в интерфейс новый абстрактный метод и он перестанет быть функциональным.
Please open Telegram to view this post
VIEW IN TELEGRAM
✍4👍4👨💻2⚡1🔥1💯1🤓1
Функциональный интерфейс в Java. Часть 2.
Касательно функциональных интерфейсов в Java есть один тонкий момент, о котором нужно знать, идя на собеседование, причем неважно - джуниор ты или синьор, подловить тут можно любого!)
Этот тонкий момент описан в Java Language Specification: “interfaces do not inherit from Object, but rather implicitly declare many of the same methods as Object.”
Это означает, что функциональные интерфейсы могут содержать дополнительно абстрактные методы, определенные в классе Object. Код на картинке валиден, ошибок компиляции и во времени выполнения не будет.
Будьте внимательны на собеседовании! 🤘
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
Касательно функциональных интерфейсов в Java есть один тонкий момент, о котором нужно знать, идя на собеседование, причем неважно - джуниор ты или синьор, подловить тут можно любого!)
Этот тонкий момент описан в Java Language Specification: “interfaces do not inherit from Object, but rather implicitly declare many of the same methods as Object.”
Это означает, что функциональные интерфейсы могут содержать дополнительно абстрактные методы, определенные в классе Object. Код на картинке валиден, ошибок компиляции и во времени выполнения не будет.
Будьте внимательны на собеседовании! 🤘
Please open Telegram to view this post
VIEW IN TELEGRAM
✍4👍3🔥3😁1
Какое предназначение у ключевого слова abstract в Java?
Anonymous Quiz
6%
Для предотвращения наследования класса
1%
Для предотвращения переопределения метода
2%
Для создания экземпляра класса
90%
Для объявления абстрактного класса или метода
1%
Посмотреть ответ
👍3✍2⚡1🔥1🎉1👨💻1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁10💯4👍3🎉1
Что делает ключевое слово default в интерфейсах?
Anonymous Quiz
8%
Определяет конструктор по умолчанию
67%
Определяет реализацию метода по умолчанию в интерфейсе
13%
Указывает, что метод должен иметь видимость по умолчанию
5%
Указывает, что метод должен быть абстрактным
7%
Посмотреть ответ
👍4✍3🔥2
Анонимный класс в Java.
Нужно обязательно иметь представление о том, что такое анонимный класс, чтобы ответить на собеседовании!
И так, Анонимные классы – это классы, что не имеют имени и их создание происходит в момент инициализации объекта. Такие классы много где используются в Java и с ними вы ещё часто будете сталкиваться.
Рассмотрим небольшой пример.
Предположим что у нас есть интерфейс Auto с методом void flyingMoto(), который необходимо реализовать. Для реализации можно создать отдельный класс (например, FamilyAuto или WorkAuto), в нём реализовать интерфейс (заимплементить наш интерфейс Auto), далее создать объект на основе класса и через объект ссылаться на методы классы.
Звучит логично, но не оправдано с точки зрения количества действий.
Куда проще создать объект и для него сразу выполнить создание анонимного класса. Так и читается легче и меньше кода (мы не создали целый отдельный класс для имплементации интерфейса).
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
Нужно обязательно иметь представление о том, что такое анонимный класс, чтобы ответить на собеседовании!
И так, Анонимные классы – это классы, что не имеют имени и их создание происходит в момент инициализации объекта. Такие классы много где используются в Java и с ними вы ещё часто будете сталкиваться.
Рассмотрим небольшой пример.
Предположим что у нас есть интерфейс Auto с методом void flyingMoto(), который необходимо реализовать. Для реализации можно создать отдельный класс (например, FamilyAuto или WorkAuto), в нём реализовать интерфейс (заимплементить наш интерфейс Auto), далее создать объект на основе класса и через объект ссылаться на методы классы.
Звучит логично, но не оправдано с точки зрения количества действий.
Куда проще создать объект и для него сразу выполнить создание анонимного класса. Так и читается легче и меньше кода (мы не создали целый отдельный класс для имплементации интерфейса).
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5✍3👨💻3
Какое предназначение оператора LIKE в SQL?
Anonymous Quiz
8%
Проверяет, существует ли значение в указанном списке значений
10%
Фильтрует строки, возвращаемые оператором SELECT
67%
Выполняет сопоставление с шаблоном для строки
12%
Проверяет, попадает ли значение в указанный диапазон
3%
Посмотреть ответ
✍4👍4❤3🔥1👨💻1
Лямбда-выражение в Java. Часть 1.
Продолжаем по-тихоньку подбираться к очень важной библиотеке Stream API в Java.
Лямбда-выражение или просто лямбда в Java — анонимная функция анонимного класса, реализующего функциональный интерфейс.
Структура лямбда-выражения.
Сигнатура лямбда-выражения соответствует сигнатуре абстрактного метода реализуемого функционального интерфейса. Можно даже сказать, что лямбда-выражение является реализацией абстрактного метода этого функционального интерфейса.
Главное отличие сигнатуры лямбда-выражения от сигнатуры метода в том, что она состоит только из двух частей: списка аргументов и тела, разделённых при помощи «—>».
Пример создания лямбда-выражения.
Чтобы лучше понять, что такое лямбда-выражения Java, следует рассмотреть пример создания синтаксиса. Реализуем некий функциональный интерфейс RentSearcher, с помощью которого сможем проверить, все квартиры, которые находятся в аренде ниже определенной цены (Картинка 1).
При использовании анонимного класса, процесс создания объекта будет выглядеть как на Картинке 2.
При этом объект RentSearcher можно описать с помощью лямбда-выражения, что позволит сделать запись аккуратнее (Картинка 3).
С помощью простых действий, элемент кода можно сделать еще аккуратнее, тем самым повысив качество кода (Картинка 3).
Благодаря Java лямбда функции можно сделать намного короче и лаконичнее. Подобного уменьшения невозможно добиться при добавлении классических анонимных классов.
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
Продолжаем по-тихоньку подбираться к очень важной библиотеке Stream API в Java.
Лямбда-выражение или просто лямбда в Java — анонимная функция анонимного класса, реализующего функциональный интерфейс.
Структура лямбда-выражения.
Сигнатура лямбда-выражения соответствует сигнатуре абстрактного метода реализуемого функционального интерфейса. Можно даже сказать, что лямбда-выражение является реализацией абстрактного метода этого функционального интерфейса.
Главное отличие сигнатуры лямбда-выражения от сигнатуры метода в том, что она состоит только из двух частей: списка аргументов и тела, разделённых при помощи «—>».
Пример создания лямбда-выражения.
Чтобы лучше понять, что такое лямбда-выражения Java, следует рассмотреть пример создания синтаксиса. Реализуем некий функциональный интерфейс RentSearcher, с помощью которого сможем проверить, все квартиры, которые находятся в аренде ниже определенной цены (Картинка 1).
При использовании анонимного класса, процесс создания объекта будет выглядеть как на Картинке 2.
При этом объект RentSearcher можно описать с помощью лямбда-выражения, что позволит сделать запись аккуратнее (Картинка 3).
С помощью простых действий, элемент кода можно сделать еще аккуратнее, тем самым повысив качество кода (Картинка 3).
Благодаря Java лямбда функции можно сделать намного короче и лаконичнее. Подобного уменьшения невозможно добиться при добавлении классических анонимных классов.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6✍3👨💻3
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6✍3❤3⚡2🤓1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁8✍3❤2💯1👨💻1
Лямбда-выражение в Java. Часть 2.
Рассмотрим еще один пример создания лямбда-выражения.
У нас есть некий интерфейс CarFilter с абстрактным методом test(Car car), который каким-то образом должен тестировать/фильтровать наши машины (и мы еще не решили как). Смотрим на Картинку 1.
Допустим, нам нужна реализация нашего интерфейса CarFilter, описанного выше, которая проверяла бы, что автомобиль выпущен не раньше 2010 года. Если мы будем использовать анонимный класс, то создание объекта этого класса, который реализует наш интерфейс CarFilter, будет выглядеть примерно как на Картинке 2.
Но мы можем описать объект, реализующий наш интерфейс CarFilter, при помощи лямбда-выражения (Картинка 3, сверху).
Однако, эту запись можно сделать ещё меньше как на Картинке 3, снизу.
Согласитесь, что такая запись значительно меньше и лаконичнее, чем использование анонимного класса.
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
Рассмотрим еще один пример создания лямбда-выражения.
У нас есть некий интерфейс CarFilter с абстрактным методом test(Car car), который каким-то образом должен тестировать/фильтровать наши машины (и мы еще не решили как). Смотрим на Картинку 1.
Допустим, нам нужна реализация нашего интерфейса CarFilter, описанного выше, которая проверяла бы, что автомобиль выпущен не раньше 2010 года. Если мы будем использовать анонимный класс, то создание объекта этого класса, который реализует наш интерфейс CarFilter, будет выглядеть примерно как на Картинке 2.
Но мы можем описать объект, реализующий наш интерфейс CarFilter, при помощи лямбда-выражения (Картинка 3, сверху).
Однако, эту запись можно сделать ещё меньше как на Картинке 3, снизу.
Согласитесь, что такая запись значительно меньше и лаконичнее, чем использование анонимного класса.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5✍4👨💻4🔥1