new方法

#!/use/bin/python
# -*- conding:utf-8 -*-

# class Student:
# def __init__(self,name):
# self.name = name
#
# a = Student('a')
# # a.age = 19
# setattr(a,'age',19)
# print(a.__dict__)

# __new__构造方法 创建一个对象
#__init__初始化方法

class Foo:
def __new__(cls,*args,**kwargs):
print('执行我了')
return object. __new__(cls)
def __init__(self):
print('22222222')
Foo()
# 先执行new方法,object.new()
# 再执行init

# Foo -->python解释器收到你的python代码
# python解释器替你做了很多操作
# 包括 主动帮助你 调用结果new方法 去创造一个对象 开票内存空间,python语言封装了开辟内存的工作
# 翻译成c语言的字节码
#将c语言的字节码解释成机器码 让cpu去执行

猜你喜欢

转载自www.cnblogs.com/xg120688/p/9099920.html
new