首页 > 其他 > 详细

面向对象的解释

时间:2019-03-25 11:47:33      阅读:128      评论:0      收藏:0      [点我收藏+]

面向对象
基础:三大特性

1.继承

2.抽象

python 抽象示例:

  

import abc

from abc import *

 

classSClass(metaclass = abc.ABCMeta):

       @abstractmethod

       def my_print(self):

              pass

 

classCClass(SClass):

       pass

 

cc = CClass() 

3.封装


进阶:

特殊方法:

__enter__
__exit__

上面这两个特殊方法是with方法进去后和出来后执行的函数.


高级:metaclass
1. 创建类有2中方式
class Foo(object): pass

type(‘Foo‘,(object,),{})

2. 如果想要一个类由其他type创建,可以通过metaclass进行指定

class Mytype(type):

def __call__(self....):
pass


# 1. 执行Mytype.__init__
class Foo(metaclass=Mytype):

def __init__():
pass

def __new__(...):
return 对象


# 2. 执行Mytype.__call__
# 3. 执行Foo类的__new__
# 4. 执行Foo类的__init__
obj = Foo()

面向对象的解释

原文:https://www.cnblogs.com/ahliucong/p/10592739.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!