• python-面向对象-17-继承/object类/mro方法

    1.继承的基本概念继承是面向对象程序设计的重要特征,也是实现"代码复用"的重要手段。如果一个新类继承自一个设计好的类,就直接具备已有类的特征,这样就大大降低了工作难度,因为很多事情父类已经做了,不需要再重新做一遍,减少重复劳动。已有的类,我们称为父类或者基类,新的类,我们称为子类...

    python-面向对象-16-面向对象三大特征

    总体说明python是面向对象的语言,也支持面向对象编程的三大特征:继承、封装(隐藏)、多态。封装(隐藏)隐藏对象的属性和实现细节,只对外提供必要的方法。相当于将"细节封装起来",只对外暴露”相关调用方法“。通过前面学习的"私有属性"、"私有方法&q...

    python-面向对象-15-property装饰器/get和set方法

    1.@property装饰器@property可以将一个方法的调用方式变成"属性调用"。下面是一个简单的示例,让大家体会一下这种转变。示例代码:classEmployee:@propertydefsalary(self):return30000emp1=Employee()pri...

    python-面向对象-14-私有方法

    1私有方法说明python对于类的成员没有严格的访问控制限制,这与强类型面向对象语言有区别。关于私有属性和私有方法,有如下要点:通常我们约定,两个下划线开头的方法属于是私有的(private)方法,其他方法为公共的(public)方法,没有protect的中间态。类内部可以访问私有属性(方法)类外部...

    python-面向对象-13-私有属性

    Python对于类的成员没有严格的访问控制限制,这与强类型面向对象语言有区别。关于私有属性和私有方法,有如下要点:通常我们约定,两个下划线开头的方法的属性属于是私有的(private),其他为公共的(public),没有protect的中间态。类内部可以访问私有属性(方法)类外部能访问属性,但是不能...

    python-面向对象-12-方法重载/方法动态性/__slots__类属性

    1方法重载1.1Python不支持方法重载在强类型语言(比如:C语言、Java语言)中,可以定义多个重名的方法,只要保证方法的签名唯一即可。方法签名包含三个部分:方法名参数数目参数类型Python中,方法的参数没有声明类型(调用时才能确定参数的类型),参数的数目也可以由可变参数控制。因此,pytho...

    python-面向对象-11-call方法/可调用对象

    在Python中,定义了__call__方法的对象,就可以成为"可调用方法",即该函数可以被函数一样调用(简单的说,就是可以通过括号()的方法来调用对象)。1__call__()方法1.1未定义__call__()方法classStudent:"""...

    python-面向对象-10-__del__析构方法/垃圾回收机制

    Python语言自带垃圾回收机制,为了能够比较清楚说明白Python的垃圾回收机制的原理,我们今天就从最底层的解释器开始,采用由内到外的方式来说明。1.Python默认解释器CPythonPython语言拥有多种解释器,但是默认采用CPython实现。CPython实际上是用C语言编写的。主要功能如...

    python-面向对象-09-类方法/静态方法

    1.类方法类方法是从属于"类对象"的方法。类对象可以通过装饰器@classmethod来定义,具体格式如下:@classmethoddef类方法名(cls[,形参列表]):方法体要点如下:@classmethod必须位于方法的上面一行第一个参数cls(class的缩写,和前面笔记...

    python-面向对象-08类属性

    python-面向对象-08类属性1.类属性基本概念类属性从属于"类对象"的属性,也称之为"类变量"。由于,类属性从属于类对象,可以被所有的实例对象所共享。类属性的定义方法:class类名:类变量名=初始值在类里面或者在类的外面,我们可以通过:类名.类属性名来...