Другие языки программирования и технологии

Вопрос по ООП. Инкапсуляция, наследие, полиморфизм. Как понять все это чудо?

почитать)
инкапсуляция - сокрытие реализации.
стиральная машинка имеет менюшку, с ней работаешь, а как оно внутри тебе знать не надо, закрыто внутри.

наследование это когда собака, кошка и мышка имеют общие черты, чтобы их постоянно не повторять создают общий класс животное, там эти общие черты реализуют и наследование позволяет им получить эти свойства как животным.

полиморфизм это когда одинаковая форма, но разная реализация. стиральные машинки могут быть по разному устроены, но в них можно загрузить бельё, постирать его и вытащить, хотя они и разные.
Ким Котляров
Ким Котляров
44 389
Лучший ответ
Это понятия сами по себе очень просты. Вот способы записи этих "чудес" с множеством их вариантов намного сложнее. Надо читать учебник и разбираться.
Инкапсуляция это когда код и данные, т. е. функции и переменные, находятся в одной оболочке, т. е. в классе. И они там так находятся так, что доступ к ним регулируется (с помощью public, private и protected). Т. е. к переменным или некоторым функциям в классе можно получить доступ не откуда угодно, а только от туда, от куда захотел писатель этого класса. Ферштейн? Если нет, тогда на практике всё яснее будет.

Наследование это когда переменные и функции одного класса переходят по наследству другому классу. Т. е. их не нужно писать заново.

Полиморфизм это когда у нескольких классов есть один родительский класс, с одинаковыми функциями, которые наследуются всеми. И это даёт возможность все разные классы-потомки поместить в один массив (точнее помещаются объекты этих классов-потомков) и обращаться с ними одинаково, как будто это всё объекты одного класса.