1.使用对象的好处:多态,封装,继承
封装与多态的区别:
多态是你无需知道对象所属的类,就可以调用方法
封装是你无需知道对象的构造就能使用它
2.与对象属性相关联的函数称为方法
3.加法运算符+ 既可以用于数,也可以用于字符串和其他类型的序列
4在Python中约定使用单数并将其首字母大写来标识类:
5.创建自定义的类
6.self 的解释
7.方法和函数的区别在于参数self上,方法是将其第一个参数关联到它所属的实例,因此无需提供这个参数
8.私有属性不能从对象外部访问,而只能通过存取器方法(比如get_name 和set_name )来访问
9.要让方法或者属性成为私有的(不能从外部访问),只需让其名称以两个下划线打头即可
若不希望名称被修改,又不想发出不要从外部修改属性或者方法的信号,可用一个下划线打头 (page112)
10.类的命名空间
11.
callable(object) 判断对象是否是可调用的(如是否是函数或者方法)
要确定一个类是否是另一个类的子类,可使用内置方法 issubclass
如果有一个类,要确定其基类,可访问其特殊属性 __bases__
要确定对象是否是特定类的实例,可使用 isinstance
要知道对象属于哪个类,可使用__class__
查看实例是否包含属性talk,可使用 hasattr
指定属性不存在时使用的默认值,可使用 getattr
要查看对象中存储的所有值,可检查__dict__ (链接:http://www.cnblogs.com/alvin2010/p/9102344.html)
12.多重继承
13.如果要确定对象是由什么组成的,可查看模块 inspect (链接:https://www.cnblogs.com/mosson/p/7244480.html)
14.抽象类:是不能被实例化的类,其职责是定义子类应实现的一组抽象方法
标准库:模块 collections.abc 提供了很多有用的抽象类
抽象基类: