方法一:用元类的方式实现一个singleton。liuxiaoyan@development:~/mysite$ cat Singleton.py class Singleton(type): """Singleton Metaclass""" def __init__(...
分类:
编程语言 时间:
2015-03-05 16:34:25
阅读次数:
152
一、拦截方法调用和参数获取 示例1: class MyClass{
?def hello(){
??‘invoked hello directly‘
?}
?def invokeMethod(String name, Object args){
??return "unknown method $name(${args.join(‘, ‘)})"...
分类:
Web程序 时间:
2015-02-28 13:13:05
阅读次数:
177
xplayer工程用了Pods,xplayerdemo_pods工程引用xplayer时又用了Pods,导致如下的链接错误:
duplicate symbol _OBJC_METACLASS_$_PodsDummy_Pods
如图:
**********************尝试删除**********************
一种办法是把demo工程里L...
分类:
其他好文 时间:
2015-02-26 23:03:26
阅读次数:
345
本文由伯乐在线-bigship翻译英文出处:stackoverflow译文:http://blog.jobbole.com/21351/译注:这是一篇在Stack overflow上很热的帖子。提问者自称已经掌握了有关Python OOP编程中的各种概念,但始终觉得元类(metaclass)难以理解...
分类:
编程语言 时间:
2015-02-11 20:28:15
阅读次数:
260
1.使用type动态创建类(type是一个类,用来创建类对象的元类, 所以也可以继承)type("Person", (), {"name": "John"})2.元类 Python中类也是对象,元类就是创建这些类对象的类,可以理解为MyClass = MetaClass()MyObject = M....
分类:
编程语言 时间:
2015-01-31 00:16:13
阅读次数:
221
第一、在OC中关于对象模型,有五个基本概念,Object(实例),Class(类),Metaclass(元类),Rootclass(根类),Rootclass‘s metaclass(根元类)
第二、每一个object都有一个隐藏的isa指针,指向class,对象结构如下所示:
typedef struct objc_class *Class;
typedef struct objc_obj...
分类:
其他好文 时间:
2015-01-06 15:34:41
阅读次数:
188
先前学习看到ORM的时候,需要用到metaclass相关的知识,于是,回过头来又去看关于metaclass的知识,看metaclass的时候,我又发现,一些和super相关的知识掌握的不是很透彻,于是又去复习了一下super相关的知识,看super的时候,又发现不了解Python的MRO,于是又去看...
分类:
Web程序 时间:
2014-12-30 00:27:39
阅读次数:
183
Python中类的实例化是由Python解释器先后调用__new__,__init__这两个魔法方法来完成的,前者用来完成实例化后的对象的“骨架”(比如,解释器会为对象分配地址,并返回一个指向该对象的引用值,该引用值会被紧接着传递给__init__函数),后者用“ self.属性名 = 属性值 ”这...
分类:
编程语言 时间:
2014-12-29 15:15:47
阅读次数:
201
1.如何使用super 一开始照着示例代码去用super的时候,觉得这个东西很简单,就像其他的单继承机制的语言中的super一样好用,好理解。可是,当你试着混合诸如bound super object,与unbound super object,metaclass,proxy object,desc...
分类:
编程语言 时间:
2014-12-28 22:07:55
阅读次数:
219
#python元类,类的创建过程
#首先调用type.__new__
#然后调用类的构造函数 class.__init__
def toString(c):
s="";
if type(c)==tuple:
s="tuple:"
for i in c:
s+=str(i)
s+=","...
分类:
编程语言 时间:
2014-12-17 12:52:11
阅读次数:
138