四十python面向对象二
Posted csjin-study
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了四十python面向对象二相关的知识,希望对你有一定的参考价值。
A、成员:
1.字段:静态字段(每个对象都有同一字段),普通字典(每个对象都有不同的数据)
2.方法:静态方法(无需使用对象的内容),类方法,普通方法(使用对象中的数据)
3.特性:普通特性(将方法伪造成字段)
通过类去访问的有:静态字段,静态方法,类方法
通过对象去访问的有:普通字段,类的方法
自己的成员自己去访问
静态方法:没有self,前添加@staticmethod,即为静态方法(通过类去访问)
类方法:比静态方法多一个参数,该参数是为了显示哪个类,前添加@classmethod
特性:将方法未造成字段来执行,前添加@property
快速判断,类执行,对象执行
self 对象调用
无self 类调用
test01
class Provice: China |
B、利用反射导入模块、查找类、创建对象、查找对象中的字
imp=__import__("test01",fromlist=True) <module ‘test01‘ from ‘F:\myworkspacedirectory\Function\member\test01.py‘> |
C、成员修饰符
成员:
字段:静态字段(每个对象都有同一字段),普通字典(每个对象都有不同的数据)
方法:静态方法(无需使用对象的内容),类方法,普通方法(使用对象中的数据)
特性:普通特性(将方法伪造成字段)
两种:共有的,私有的(两个下划线开头,只有自己能使用,派生类也不能访问)
class Provice: China |
D、类的特殊成员1
__init__
__del__
__call__===>Django
xxx.__dict__:可查看类中的成员
class Foo: call {‘__module__‘: ‘__main__‘, ‘__doc__‘: ‘ 我是类的注释 ‘, ‘country‘: ‘zhongguo‘, ‘__init__‘: <function Foo.__init__ at 0x000001C307CB8950>, ‘__call__‘: <function Foo.__call__ at 0x000001C307CB89D8>, ‘__getitem__‘: <function Foo.__getitem__ at 0x000001C307CB8A60>, ‘__setitem__‘: <function Foo.__setitem__ at 0x000001C307CB8AE8>, ‘__delitem__‘: <function Foo.__delitem__ at 0x000001C307CB8B70>, ‘add‘: <function Foo.add at 0x000001C307CB8BF8>, ‘__dict__‘: <attribute ‘__dict__‘ of ‘Foo‘ objects>, ‘__weakref__‘: <attribute ‘__weakref__‘ of ‘Foo‘ objects>} |
E、iter:类的特殊成员2
class Foo: |
以上是关于四十python面向对象二的主要内容,如果未能解决你的问题,请参考以下文章
大数据必学Java基础(四十):面向对象三大特性之一继承(Inheritance)