创建和使用类
创建Dog类
class Dog():
def __init__(self, name, age):
self.name = name
self.age = age
def sit(self):
print(self.name.title())
用class关键字创建类,类名后的()中填写的是要继承的类。
__init__()
方法是构造函数,第一个参数是当前实例本身的引用,之后是对象属性。当创建一个类实例后,会自动调用这个__init__()
方法,如果不重写的话,默认就有一个__init__()
。
定义的成员函数同样第一个参数必须传入self。
根据类创建实例
my_dog = Dog('willie', 6)
访问实例属性使用.
操作符:
my_dog.name
调用方法同样:
my_dog.sit()
继承
子类__init__
方法
# 父类
class Car():
def __init__(self, make, model, year):
self.make = make
self.model = model
self.year = year
# some function
class ElectricCar(Car):
def __init__(self, make, model, year):
super().__init__(make, model, year)
子类的构造方法可以使用super()来构建父类和子类的联系,直接调用父类的构造方法。
给子类定义属性和方法
让一个类继承另一个类后,可以添加区分子类和父类所需的新属性和方法。
重写父类方法
假设Car类有一个fill_gas_tank()方法,那么子类中可以重写这个方法:
class ElectricCar(Car):
--snip--
def fill_gas_tank(self):
print("something")
子类实例调用该方法就会有自己的行为,父类实例调用该方法会有自己的行为。
网友评论