Python类定义和类继承详解
2017-12-04 19:45
567 查看
http://www.jb51.net/article/65700.htm
一、类定义:
?
类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性
如果直接使用类名修改其属性,那么将直接影响到已经实例化的对象
类的私有属性:
__private_attrs 两个下划线开头,声明该属性为私有,不能在类地外部被使用或直接访问
在类内部的方法中使用时 self.__private_attrs
类的方法
在类地内部,使用def关键字可以为类定义一个方法,与一般函数定义不同,类方法必须包含参数self,且为第一个参数
私有的类方法
__private_method 两个下划线开头,声明该方法为私有方法,不能在类地外部调用
在类的内部调用slef.__private_methods
类的专有方法:
__init__ 构造函数,在生成对象时调用
__del__ 析构函数,释放对象时使用
__repr__ 打印,转换
__setitem__按照索引赋值
__getitem__按照索引获取值
__len__获得长度
__cmp__比较运算
__call__函数调用
__add__加运算
__sub__减运算
__mul__乘运算
__div__除运算
__mod__求余运算
__pow__称方
示例:
?
二、继承类定义:
1.单继承
?
2.类的多重继承
?
需要注意圆括号中父类的顺序,若是父类中有相同的方法名,而在子类使用时未指定,python从左至右搜索,即方法在子类中未找到时,从左到右查找父类中是否包含方法
?
类方法的覆写——子类覆盖掉父类的方法
def 方法名与父类一致
若是在方法中要使用到父类方法 父类名.方法名
若是将类放到了模块中
使用时
?
以上三段程序的执行结果:
一、类定义:
?
如果直接使用类名修改其属性,那么将直接影响到已经实例化的对象
类的私有属性:
__private_attrs 两个下划线开头,声明该属性为私有,不能在类地外部被使用或直接访问
在类内部的方法中使用时 self.__private_attrs
类的方法
在类地内部,使用def关键字可以为类定义一个方法,与一般函数定义不同,类方法必须包含参数self,且为第一个参数
私有的类方法
__private_method 两个下划线开头,声明该方法为私有方法,不能在类地外部调用
在类的内部调用slef.__private_methods
类的专有方法:
__init__ 构造函数,在生成对象时调用
__del__ 析构函数,释放对象时使用
__repr__ 打印,转换
__setitem__按照索引赋值
__getitem__按照索引获取值
__len__获得长度
__cmp__比较运算
__call__函数调用
__add__加运算
__sub__减运算
__mul__乘运算
__div__除运算
__mod__求余运算
__pow__称方
示例:
?
1.单继承
?
?
?
def 方法名与父类一致
若是在方法中要使用到父类方法 父类名.方法名
若是将类放到了模块中
使用时
?
相关文章推荐
- Python类定义和类继承详解
- Python类定义和类继承详解
- Python类定义和类继承详解
- iOS-通过继承UIScrollView来自定义UITableView实现对代理的详解
- 聚合和继承的定义详解
- Python中类的定义、继承及使用对象实例详解
- Python中类的定义、继承及使用对象实例详解
- Python类的定义、继承及类对象使用方法简明教程
- jdk8 类和接口的多继承详解
- 详解javascript类继承机制的原理
- C++学习之虚函数和虚继承详解
- [置顶] Javascript面向对象继承prototype详解
- Swift学习——类的定义,使用,继承,构造等(五)
- javaSE_8系列博客——Java语言的特性(五)--接口和继承(2)--定义接口
- javascript中定义类的方法详解
- [JavaScript]类之三---详解javascript类继承机制的原理
- 子类继承父类—构造函数用法详解
- effective c++ 条款37: 决不要重新定义继承而来的非虚函数
- 深入ORACLE变量的定义与使用的详解
- 35.定义接口以及继承接口