类的封装
封装的理解
#私有类属性:仅供当前类访问的类属性,子类亦不能访问
class <类名>:
<私有类属性名> = <类属性初值>
def __init__(self, <参数>):
...
#区别:私有类属性需要有两个下划线
#私有类属性的公开与私有 举个栗子
class DemoClass:
__count == 0
def __init__(self, name):
self.name = name
DemoClass.__count += 1 #私有属性能在类内部被调用
@classmethod
def getCount(cls):
retuen DemoClass.__count #类方法
dc1 = DemoClass("老王")
dc2 = DemoClass("老李")
print(DemoClass.getCount())
#私有变量的优势:只能通过特定的方法去访问,可以在访问函数中设置访问条件以及访问次数统计、控制,从而有效保护变量
#私有实例属性:仅供当前类内部访问的实例属性,子类亦不能访问
class <类名>:
def __init__(self, <参数>):
self.<__实例属性名> = <实例属性初值>
...
#同样可以设置return函数返回
#ps.可用dc1(实例名)._DemoClass(类名)__name(私有变量)来访问私有变量,即私有变量不一定真的私有
类的保留属性
类的保留方法
类的继承
继承的理解
类继承的构建
#类继承的构建
class <类名>(<基类名>):
def __init__(self, <参数>):
<语句>
...
python 最基础类
类的属性重载
重载无需标记
类的方法重载
# 增量重载:使用super()方法
class <派生类>(<基类名>):
def <方法名>(self, <参数>):
super.<基类方法名>(<参数>)
...
类的多继承
class <类名>(<基类名>, <基类名>, <基类名>, ...):
def __init__(self. <参数>):
<语句块>
...
总结