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

Инкапсуляция, полиморфизм Обясните по проще что такое инкапсуляция и полиморфизм?

Инкапсуляция это когда объект может прятать методы или свойства. Например в JS для этого функцию запихивают в локальную переменную. Такое требуется если метод должен работать только внутри какой-то функции.
var Inc = function () {
var private = function () {
alert("Метод работает только внутри функции Inc и закрыт для наследования");
}
}

Полиморфизм - возможность создать несколько объектов, имеющих одинаковый интерфейс, но разное поведение.
Владимир Шипелёв
Владимир Шипелёв
88 366
Лучший ответ
Инкапсуляция - private public и т. д. возможность разграничивать доступ к методам, полям и свойствам класса, возможность разграничить класс чисто логически.
Это как стены внутри квартиры, есть твоя комната, есть гостиная, есть прихожая, в твою комнату никто не может заходить кроме тебя, в гостиной лишь ты и те кому ты разрешил, в прихожую же может зайти любой. Грубо говоря так.

Полиморфизм - работает лишь при наличии наследования, по факту примером полиморфизма может являться банальный override. Или банальный интерфейс, у тебя есть описание скелета, есть чертеж класса, но нет самого класса, ты можешь реализовать этот чертеж из свинца, а можешь из золота, метод с одинаковым видом, но разной начинкой.
В одном классе у тебя метод trulala вызывает вывод на экран, а в другом классе тот же самый метод trulala связывается с БД.

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