类(Class): 用来描述具有相同的属性和方法的对象的集合。
类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。
类有一个名为 __init__() 的特殊方法(构造方法),该方法在类实例化时会自动调用
self:self 代表的是类的实例,代表当前对象的地址,而 self.class 则指向类。
类调用 Car.weight
实例化 car01=Car(5)
实例对象调用 car01.weght
类的创建
#创建小汽车类和客车类
class Car(object):
def __init__(self,weight): #实例化对象时传入特有属性
self.weight=weight
print("小汽车")
print(weight,"t") #定义类内方法,功能是打印出实例化的小汽车的重量
def func(self):
print("小汽车的驾驶方法")
class Passenger_car(object):
def __init__(self,weight):
self.weight=weight
print("客车")
print(weight,"t")
def func(self):
print("客车的驾驶方法")
类的继承
class Bus028(Passenger_car):
def __init__(self,weight): #对基类方法的重写
self.weight=weight
print("28路公交车")
print(weight,"t")
def func(self): #对基类方法的重写
print("28路公交车的驾驶方法")
#子类在父类中继承过来了func方法,但是在父类中修改了原来方法的内容
多态的使用
class Bus028(Passenger_car):
def __init__(self,weight):
self.weight=weight
print("28路公交车")
print(weight,"t")
def func(self):
print("28路公交车的驾驶方法")
class Bus906(Passenger_car):
def __init__(self,weight):
self.weight=weight
print("906路公交车")
print(weight,"t")
def func(self):
print("906路公交车的驾驶方法")
class BusB32(Passenger_car):
def __init__(self,weight):
self.weight=weight
print("B32路公交车")
print(weight,"t")
def func(self):
print("B32路公交车的驾驶方法")
def funcs(obj): #此处obj表示传入一个实例化对象
obj.func()