ООП в Python
class A: # Объявление класса
name = 'class_A' # Поле класса
def out(self): # self - обязательный параметр. Это как this в С/С++
print(self.name)
a = A() # Создали объект a класса A
a.out() # class_A
a.arg = 10; # Добавили аргумент к объекту a
print(a.arg) # 10
b = A() # Создали объект b класса A
b.name = "object B" # Изменили поле name для объекта b
b.out() # object B
Инкапсуляция
class A:
def _out(self): # Метод с подчеркиванием недоступен вне класса
print("Это приватный метод!")
def __out_priv(self): # Метод с двойным подчеркиванием недоступен по имени объекта
print("Это вдвойне приватный метод!")
a = A()
a._out() # Это приватный метод!
a.__out_priv() # Ошибка! Метод не может быть вызван из объета
a._A__out_priv() # Это вдвойне приватный метод! А так можно вызвать
Наследование
class Car: # Класс автомобиля
body_type = '' # Тип кузова
num = 0; # Номер авто
def out(self): # Выводим данные об авто
print(f'type = {self.body_type}, num = {self.num}')
class Car_cupe(Car): # Наследуем от класса Car
body_type = 'cupe' # Меняем свойство от базового класса
getz = Car() # Создаем экземпляр авто
getz.body_type = 'hatchback' # Задаем тип коузова
getz.num = 794208 # Задаем номер
getz.out() # type = hatchback, num = 794208
solaris = Car_cupe()
solaris.num = 23235
solaris.out() # type = cupe, num = 23235
2024-06-29
Понравилась страница?
Добавить в закладки
Или поделиться!
Связанные темы
Словари Исключения Файлы Функции в Python Списки Циклы Достоинства и недостатки языка Python Целые, вещественные и комплексные числа в Python ООП Вывод текста Множества Строки Синтаксис языка Python Время выполнения программы на Python Кортежи в Python Типы данных