Задать вопрос
@Moskaa

В данном случае является ли класс абстракным?

class Shape:
    def area(self):
        pass

class Circle(Shape):
    def __init__(self, radius):
        self.radius = radius

    def area(self):
        return 3.14159 * self.radius ** 2

class Rectangle(Shape):
    def __init__(self, width, height):
        self.width = width
        self.height = height

    def area(self):
        return self.width * self.height

shapes = [Circle(5), Rectangle(4, 6)]

for shape in shapes:
    print("Area:", shape.area())


Вопрос таков: является ли класс Shape абстрактным, и если нет, то почему?
  • Вопрос задан
  • 26 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
Maksim_64
@Maksim_64
Data Analyst
Нет не является, ты можешь создать его экземпляр.

Вот так будет абстрактный.
from abc import ABC, abstractmethod
class Shape(ABC):

    @abstractmethod
    def area(self):
        pass
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы