Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия |
theory:oop [2020/05/24 16:28] – labuser29 | theory:oop [2024/11/30 12:21] (текущий) – labuser30 |
---|
===== Объектно- ориентированное программирование ===== | ===== Объектно-ориентированное программирование ===== |
| |
Объектно-ориентированное программирование (сокращенно ООП) — это парадигма разработки программных систем, в которой приложения состоят из объектов. | Объектно-ориентированное программирование (сокращенно ООП) — это парадигма разработки программных систем, в которой приложения состоят из объектов. |
Сразу возникает вопрос, а что за метод __init__. Это //конструктор// — функция, вызываемая при создании объекта. Когда создается объект, то код этой функции исполняется. Наш конструктор автомобиля принимает сразу несколько параметров — цвет, количество топлива в баке и потребление топлива на 100км. При создании объекта автомобиля мы эти параметры указываем и конструктор создает объект с заданными параметрами. | Сразу возникает вопрос, а что за метод __init__. Это //конструктор// — функция, вызываемая при создании объекта. Когда создается объект, то код этой функции исполняется. Наш конструктор автомобиля принимает сразу несколько параметров — цвет, количество топлива в баке и потребление топлива на 100км. При создании объекта автомобиля мы эти параметры указываем и конструктор создает объект с заданными параметрами. |
| |
Также непонятно что такое self в параметрах всех функций и при обращении к свойствам. self — это ссылка объекта на самого себя, на текущий экземпляр класса. Ведь класс это всего- лишь шаблон. И объектов, которые могут быть созданы по нему — много. Используя класс Car можно создать много экземпляров автомобилей со своими наборами свойств. | Также непонятно что такое self в параметрах всех функций и при обращении к свойствам. self — это ссылка объекта на самого себя, на текущий экземпляр класса. Ведь класс это всего лишь шаблон. И объектов, которые могут быть созданы по нему — много. Используя класс Car можно создать много экземпляров автомобилей со своими наборами свойств. |
| |
Как видно мы описали абстрактно автомобиль. У любого автомобиля есть цвет, есть одометр, определенное потребление топлива и сколько-то топлива в баке. Теперь создадим два конкретных автомобиля- мой автомобиль и автомобиль брата: | Как видно мы описали абстрактно автомобиль. У любого автомобиля есть цвет, есть одометр, определенное потребление топлива и сколько-то топлива в баке. Теперь создадим два конкретных автомобиля — мой автомобиль и автомобиль брата: |
| |
<code python> | <code python> |
MyCar = Car('Black', 50, 10) | MyCar = Car('Black', 50, 10) |
BrotrherCar = Car('White', 60, 15) | BrotherCar = Car('White', 60, 15) |
</code> | </code> |
| |
Мы создали два объекта автомобиля ''MyCar'' и ''BrotrherCar''. Это разные автомобили, разного цвета, в них разное количество топлива и даже потребляют они по- разному. Посмотрим сколько сейчас топлива в моем автомобиле и сколько он проехал | Мы создали два объекта автомобиля ''MyCar'' и ''BrotherCar''. Это разные автомобили, разного цвета, в них разное количество топлива и даже потребляют они по-разному. Посмотрим сколько сейчас топлива в моем автомобиле и сколько он проехал |
| |
<code python> | <code python> |
| |
<code python> | <code python> |
BrotrherCar.go(15) | BrotherCar.go(15) |
print(BrotrherCar.get_odo()) | print(BrotherCar.get_odo()) |
print(BrotrherCar.get_fuel()) | print(BrotherCar.get_fuel()) |
</code> | </code> |
| |