在Python中类的使用4-CSDN博客中提到,子类继承父类所有的属性和方法。对于子类来说,如果继承的方法不符合子类的要求,可以对其进行重写。相当于儿子从父亲那里继承了一件衣服,但是这个衣服的款式比较老旧,可以把这件衣服改成儿子儿子喜欢的最新款。
1 定义父类
把“People”类作为父类进行定义,代码如图1所示。
图1 定义父类
从图1中可以看出,People具有两个属性name和age,另外还具有一个名为shout()的方法,该方法显示“XXX是人!”的信息。
2 定义子类
定义People类的两个子类,分别是Teacher类和Student类,代码如图2所示。
图2 定义子类
其中,Student类具有一个名为shout()的方法,该方法的作用是显示“XXX是学生!”,也就是说,Student类重写了父类People的shout()方法;而Teacher类只是继承了People的shout()方法并没有重写。
注意1 子类重写的方法,不但方法名要与父类的方法相同,方法的参数也要相同。
3 调用方法
通过图3所示的程序分别用Student类和Teacher类的实例调用shout()方法,代码如图3所示。
图3 调用方法
在图3中,stu和teacher分别是Student类和Teacher类的实例,stu.shout()调用的是子类重写的shout()方法,而teacher.shout()调用的是继承自父类的shout()方法。代码运行的效果如图4所示。
图4 代码运行效果