1

1- exception. Создаем класс который extends Exeption

  1. создаем функцию которая throw этот класс и задает месседж

  2. потом трак кетч и код

2- рекурсия. Если логически что то выполняет действие с самим собой (факториал, фибоначчи)

3 - интерфейс -как класс только с методами. Мы ничего не пишем. просто инициализируем метод. (только аргументы и тип даты). Рандомные классы имеют одни и те же методы

4 - абстрактные классы это классы которые только классы и ид них не сделать объект. Но атрибуты и методы должны быть.

  1. абстрактые методы - имя метода. смысл

6 - можно extend только 1 класс, но интерфейсов бесконечно. в интерфейсе лучше свойства не писать.