Записаться на программу Хочу Оффер в QA Auto:
Не скупитесь на фидбек! Таймкоды ___________________________________________________ 00:00 — Вступление 01:58 — Зачем создали Java? 06:14 — Что такое кроссплатформенность и JVM? 07:11 — Что такое байт-код? 07:28 — Основные конструкции в Java 08:14 — Что находится внутри класса? 08:47 — Модификаторы доступа, static 09:38 — Порядок выполнения статических и нестатических элементов 10:31 — Как создается объект (new, конструктор) 12:07 — Дефолтный конструктор 13:17 — Protected модификатор 14:00 — Инкапсуляция и модификаторы доступа 14:54 — Как сделать неизменяемый класс (final, геттеры/сеттеры) 17:27 — Что означает final для класса, метода, поля? 18:18 — Четыре принципа ООП (инкапсуляция, наследование, полиморфизм, абстракция) 18:31 — Полиморфизм и override 20:59 — Абстрактный класс vs интерфейс 22:56 — Какие методы и поля могут быть в интерфейсе? 23:57 — Методы в абстрактном классе (дефолтные, статические) 26:00 — Реализация override, перегрузка методов 28:02 — Почему важны типы данных в Java? 30:58 — Почему нельзя перегружать методы с одинаковой сигнатурой? 32:35 — Что такое класс Object? 33:13 — Какие методы есть в Object? 35:25 — Зачем нужен equals, если есть ==? 37:12 — Как переопределить equals и hashCode? 40:25 — Почему equals и hashCode должны быть вместе? 41:07 — Как hashCode работает в коллекциях? 42:01 — Что такое String Pool? 43:02 — StringBuilder vs StringBuffer 45:07 — Как работает ArrayList (динамический массив) 50:24 — Чем отличается LinkedList от ArrayList? 52:11 — Сравнение операций получения и добавления элементов в списках и массивах 57:33 — Что дороже по операциям: ArrayList или LinkedList 57:54 — Иерархия коллекций Java: Iterable, Collection, List, Set, Queue, Map 59:04 — Есть ли порядок элементов в Set (HashSet)? 59:38 — Виды исключений: checked и unchecked 59:43 — Как прокинуть собственное исключение 01:00:58 — Как вызвать собственное исключение (throw new ...) 01:01:43 — Разница между try-catch и throws 01:02:10 — Может ли быть несколько catch блоков? 01:02:32 — Очередность: широкий Exception vs узкий ArithmeticException 01:03:23 — Что такое многопоточность, как создавать Thread, что такое synchronized 01:04:19 — Проблема с флагами и обновлением данных в нескольких потоках (data race) 01:04:45 — Как обеспечить актуальное значение между потоками (ключевое слово volatile) 01:05:10 — Что значит immutable, что значит volatile 01:06:58 — Задачи на String Pool: что выведет программа 01:13:41 — Подробное объяснение String Pool, литералы vs new String 01:14:09 — Задача StaticTrick: последовательность инициализации static и non-static 01:18:22 — Как JVM читает код: порядок исполнения статических блоков 01:25:20 — Инициализация нестатических полей, instance block, вызов конструктора 01:29:40 — Что происходит до и после конструктора, когда вызывается instance block 01:33:02 — Задача на exception trick: как работает try-catch-finally, что выбросится 01:36:14 — Как работает finally при выбрасывании нового exception 01:39:36 — Закрепление: когда выбрасывается новый runtime exception 01:40:12 — Задача на Stream API: как работает peek, filter, map, limit 01:46:42 — Почему Stream ленивый, когда срабатывает limit, как выглядит итоговый список 01:53:31 — Подготовка к последней задаче 01:55:24 — Задача на многопоточность: volatile, Thread.start vs Thread.run 01:57:59 — Как работает join, что делает run, где переопределяется run 02:00:18 — Что делает counter, как складываются значения из двух потоков 02:02:12 — Потенциальные проблемы: гонка данных (data race) ____________________ Соцсети NoBugs: Сайт:
Сообщество в телеграм:
Страница в LinkedIn: / nobugs-me Instagram: / nobugs_me Соцсети Alex Pshe: LinkedIn: / alexpshe Instagram: / alexpshe Twitter:
Англоязычный ютуб: / @alex_pshe ______ С любым вопросом смело пишите в телеграм:
#qa #qaautomation #sdet #it #тестирование #автоматизациятестирования