元类示例1 meta1.py
来源:互联网 发布:网络银行的特点 编辑:程序博客网 时间:2024/06/06 01:34
meta1.py:
from time import ctimeprint '*** Welcome to Metaclass'print'\tMetaclass declaration first.'class MetaC(type): def __init__(cls,name,bases,attrd): super(MetaC,cls).__init__(name,bases,attrd) print '***Created class %r at: %s' %(name,ctime())print '\tClass "Foo" declaration next.'class Foo(object): __metaclass__=MetaC def __init__(self): print '***Instantiated class %r at: %s' %( self.__class__.__name__,ctime())print '\tClass "Foo" instantiation next.'f=Foo()print '\tDone'
>>> *** Welcome to MetaclassMetaclass declaration first.Class "Foo" declaration next.***Created class 'Foo' at: Mon Dec 17 18:50:19 2012Class "Foo" instantiation next.***Instantiated class 'Foo' at: Mon Dec 17 18:50:19 2012Done