Абстракция в JavaScript? Добрый день.
Скоро будет собеседование на позицию Trainee / Junior JS developer и спрашивать будут про ООП. Первых три принципа понимаю: Наследование - построено на прототипах - ПримерИнкапсуляция - это когда мы можем скрыть свойства или методы от доступа извне, сделав их локальными. - ПримерПолиморфизм - это когда подкласс класса может вызвать ту же самую обобщенную унаследованную функцию в своем собственном контексте. - Пример
А вот про абстракцию что то вообще ничего не пойму.
Можете на каком то понятном примере объяснить , что такое абстракция в ООП JavaScript'a ?

21 Авг 2019 в 07:00
266 +1
0
Ответы
1

Конечно, я объясню.

Абстракция в ООП JavaScript'a означает создание общего класса или интерфейса, который определяет общие свойства и методы, которые должны быть унаследованы другими классами. То есть, абстракция позволяет скрыть детали реализации и сосредоточиться только на важных аспектах объекта.

Пример абстракции в JavaScript:

// Абстрактный класс животные
class Animal {
constructor(name) {
this.name = name;
}
// Абстрактный метод для издания звука
makeSound() {
throw new Error('Метод makeSound должен быть реализован в подклассах');
}
}
// Класс для конкретного животного - собаки
class Dog extends Animal {
makeSound() {
console.log(`${this.name} говорит: гав-гав`);
}
}
// Класс для конкретного животного - кошки
class Cat extends Animal {
makeSound() {
console.log(`${this.name} говорит: мяу-мяу`);
}
}
let dog = new Dog('Шарик');
dog.makeSound(); // Вывод: Шарик говорит: гав-гав
let cat = new Cat('Мурка');
cat.makeSound(); // Вывод: Мурка говорит: мяу-мяу

В данном примере, класс Animal является абстрактным, так как он содержит общий метод makeSound, который должен быть реализован в его подклассах. Подклассы Dog и Cat наследуются от класса Animal и реализуют метод makeSound для конкретных животных. Таким образом, абстракция помогает создать общий интерфейс для различных объектов.

20 Апр в 13:09
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 94 956 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир