Наследование (классов) - что это в программировании
Primary tabs
Forums:
Наследование - один из принципов ООП - означает возможность получения свойств объектом-потомком от родительского объекта, средствами описания их классов в программном коде.
Смысл наследования
В основе наследования лежит прежде всего иерархичность понятий, осознаваемых человеком, например:
Военная машина -> Танк -> Российский Танк -> Т-72
Это пример нисходящей иерархии понятий, под которые можно начать программировать классы, например "Боевая машина" может иметь поле "тип" - и это поле наследуют все её "дети" -то есть у Т-72 тоже будет поле "тип".
Кстати, мы можем и разветвить иерархию понятий начианая с определённого уровня - например:
Военная машина -> Танк -> Американский танк -> Абрамс
Новый функционал у наследников
Классы-наследники могут иметь и дополнительные (свои) функции, но все реализованные функции родителей становятся автоматически доступными в классах-наследниках.
Пример синтаксиса
То что один класс наследуется от другого указывается с помощью специальных слов (или слова), например (язык PHP, пример на Java ищите здесь):
/* базовый класс - от него мы будем наследоваться*/
class Component
{
public function Operation1()
{
/* просто вернём строку */
return 'у меня только одна операция!';
}
}
/* extends - слово с помощью которого "расширяют"
класс ( наследуются и вводят что-то новое)*/
class ConcreteComponent extends Component
{
/* у нас уже есть одна операция - давайте определим ещё одну*/
public function Operation2()
{
/*тоже вернём строку */
return 'У меня две операции!, хотя в коде описана только моя собственная';
}
}
- Log in to post comments
- 3735 reads