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

21 Авг 2019 в 07:00
291 +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 Апр 2024 в 13:09
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир