dyok 发表于 2017-5-6 09:01:23

python学习--新型对象模型和传统对象模型

1、新的对象模型提供了两种类方法(传统对象模型没有这些方法):静态方法和类方法
2、静态方法可以直接被类或类实例调用。它没有常规方法那样的特殊行为(绑定、非绑定、默认的第一个参数规则等等)。完全可以将静态方法当成一个用属性引用方式调用的普通函数来看待。
3、一个类方法就是你可以通过类或它的实例来调用的方法, 不管你是用类调用这个方法还是类的实例调用这个方法,python只会将实际的类对象做为该方法的第一个参数.记住:方法的第一个参数都是类对象而不是实例对象. 按照惯例,类方法的第一个形参被命名为 cls
4、类方法和静态方法都可以被类和类实例调用,类实例方法仅可以被类实例调用
5、类方法的隐含调用参数是类,而类实例方法的隐含调用参数是类的实例,静态方法没有隐含调用参数
6、新型类中新增加了slots和property,这两个比较特殊
7、实例可以拥有与类不一样的方法,这个是通过动态绑定实现的。
页: [1]
查看完整版本: python学习--新型对象模型和传统对象模型