Олимпиадный тренинг

Задача . Наследование - 7


Задача

Темы:

В программе объявлены два класса следующим образом:

class Phone:
    def __init__(self, model):
        self.__model = model


class SmartPhone(Phone):
    def __init__(self, model, memory):
        super().__init__(model)
        self.__memory = memory

    def get_info(self):
        return self.__model, self.__memory

И выполняются команды:

phone = SmartPhone('iPhone 123', 1024)
print(phone.get_info())

Выберите все верные утверждения о приведенной программе.

  1. программа отработает без ошибок и в консоль будет выведена информация по модели и размеру памяти
  2. программа будет работать без ошибок, если метод get_info() поместить в базовый класс Phone
  3. в момент создания объекта phone произойдет ошибка, так как приватная переменная __model должна объявляться в классе SmartPhone
  4. в момент вызова метода get_info() произойдет ошибка, так как локальный атрибут __model отсутствует в классе SmartPhone
  5. приватная переменная __model доступна только внутри класса Phone и недоступна в классе SmartPhone

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
Комментарий учителя