Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вопросы Инфа 1 курс 2 сем.docx
Скачиваний:
1
Добавлен:
06.02.2024
Размер:
2 Mб
Скачать
  1. Понятия ооп: класс, объект, наследование, переменные класса. Ооп по алан кей

1.  Все есть объект.

2.  Программа — совокупность объектов, указывающих друг другу что делать.

3.  Каждый объект имеет свою собственную «память» состоящую из других объектов.

4.  У каждого объекта есть тип.

5.  Все объекты одного типа могут получать одинаковые сообщения.

ООП. PYTHON

Класс (class) - элемент программы, который описывает какой-то тип данных. Класс описывает шаблон для создания объектов, как правило, указывает переменные этого объекта и действия, которые можно выполнять применимо к объекту.

Экземпляр класса (instance) - объект, который является представителем класса.

Метод (method) - функция, которая определена внутри класса и описывает какое-то действие, которое поддерживает класс

Переменная экземпляра (instance variable, а иногда и instance attribute) - данные, которые относятся к объекту

Переменная класса (class variable) - данные, которые относятся к классу и разделяются всеми экземплярами класса

Атрибут экземпляра (instance attribute) - переменные и методы, которые относятся к объектам (экземплярам) созданным на основании класса. У каждого объекта есть своя копия атрибутов.

Для создания классов используется ключевое слово class

Имена классов принято писать имена классов в формате CamelCase.

Для создания экземпляра класса, надо вызвать класс

КЛАСС имеет:

1.  Имя — обычно существительное (возможно, полученное в результате номинализации).

2.  Экземпляры — объекты.

3.  Поля — состояние.

4.  Методы — поведение,

5.  Инварианты (непротиворечивое внутреннее состояние объекта).

ОБЪЕКТ.

1.  Тип.

2.  Идентичность и состояние.

3.  Изменяемость.

4.  Логическое и физическое состояние объекта.

ОБЪЕКТ-ЗНАЧЕНИЕ.

1.  Простейший объект.

2.  Идентификация по состоянию, а не по идентификатору.

3.  Переопределена операция сравнения: два объекта равны, если их состояния равны.

ОБЪЕКТ-ССЫЛКА.

1.  Сложный объект

2.  Много логики и данных.

3.  Идентичность по ссылке.

НАСЛЕДОВАНИЕ.

1.  Возможность использования полей и методов родителя(ей).

2.  Определение нового типа путем расширения или модификации существующего.

3.  Множественное наследование (семантическая неопределенность: проблема ромба).

Наследование позволяет выделить общее для нескольких классов поведение и вынести его в отдельную сущность.

Указываем наследника в скобках при объявлении класса.

Методы родителя экземпляра используем через super().

 

Три вида наследования.

1.  Специализация - специфичная разновидность (другие свойства).

2.  Замещение - другое поведение.

3.  Реализация - совместное использование кода.

Переменные класса

Помимо переменных экземпляра, существуют также переменные класса. Они создаются, при указании переменных внутри самого класса, не метода:

К переменным класса можно обращаться по-разному:

  • self.ips: изменяет переменную экземпляра.

  • switch.ips: изменяет переменную класса (класс прописывается вручную).

  • type(self).ips: изменяет переменную класса.

Соседние файлы в предмете Информатика