Python 入门 14 —— 类的继承

本文介绍了Python中类的继承概念,包括基类与派生类的关系、派生类的成员特性,如成员复制、多继承时的构造函数调用顺序以及同名成员的处理。还特别提到object类作为所有类的基类,即使没有明确继承的类也会默认继承object。通过实例解析,帮助初学者掌握Python面向对象编程的关键知识点。
摘要由CSDN通过智能技术生成

一、基类与派生类

在定义类时,可以在类名后面添加一对小括号“()”,用于指定新定义的类继承自哪些类。例如:

class 类名(基类1,基类2,基类3...): pass

被继承的类和新定义的类通常分别被称为“基类”和“派生类”。当然,基类和派生类的称呼是相对的:基类可能也是从其它的类继承而来,是其它类的派生类;同样,派生类也可以被其它的类继承,而成为基类。

基类和派生类很多时候又分别被称作“父类”和“子类”。

定义类时,可以从单个基类继承(单继承),也可以从多个基类继承(多继承)。多继承时,各基类之间用逗号“,”分隔。

二、派生类的成员

1、通过“复制”,派生类得到所有基类的公有成员和保护成员。

在生成派生类时,所有基类的公有成员和保护成员都会“复制”一份给派生类,所以,派生类拥有所有基数的公有成员和保护成员,通过派生类的类名和派生类对象的对象名,可以访问所有基数的公有成员和保护成员。

因为基类的私有成员在生成派生类时没有被“复制”,所以,通过派生类的类名和派生类对象的对象名不能访问基数的私有成员。例如:

class base01:
    x1 = 1; _y1 = 2;  __z1 = 3
    def __init__(self): self.a1 = 11; self._b1 = 12; self.__c1 = 13

class base02:
    x2 = 5

class sub01(base01, base02):
    v = 100

# 用类名访问
print(sub01.x1, sub01._y1, sub01.x2, sub01.v)    # 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值