41 lines
1.4 KiB
Python
Executable File
41 lines
1.4 KiB
Python
Executable File
class car:
|
||
name = "None"
|
||
weight = 1000
|
||
speed = 200
|
||
|
||
#__init__ нужен, чтобы сразу задать объекту нужные параметры
|
||
#Инициализация при создании
|
||
def __init__(self, name, weight, speed):
|
||
self.name = name
|
||
self.weight = weight
|
||
self.speed = speed
|
||
print(f"{self.name} едет со скоростью {self.speed}")
|
||
|
||
#self необходим для того, Чтобы отличать методы от функций, которые не привязаны к какому-то классу/объекту,
|
||
#поддерживать полиморфизм. Self - это что-то типа параметра метода.
|
||
def set(self, name, weight, speed):
|
||
self.name = name
|
||
self.weight = weight
|
||
self.speed = speed
|
||
|
||
#Класс наследник создаётся так:
|
||
class truck(car):
|
||
wheels = 8
|
||
def __init__(self):
|
||
pass
|
||
|
||
|
||
man = truck()
|
||
man.wheels = 12
|
||
print(man.wheels)
|
||
#классы - наследники имеют доступ к методам из оригинального класса
|
||
man.set(weight = 10000, name = "Man", speed = 200)
|
||
|
||
Audi = car("Audi", 2000, 320)
|
||
Audi.set(weight = 2000, name = "Audi", speed = 320)
|
||
print(Audi.name)
|
||
|
||
Shkoda = car("Shkoda", 1800, 235)
|
||
Shkoda.set(weight = 1800, name = "Shkoda", speed = 235)
|
||
print (Shkoda.name)
|