擅长:python、mysql、java
<p>重写分配器。在</p>
<pre><code>class B(object):
def __new__(cls, val):
if val:
return D()
return super(B, cls).__new__(cls)
def foo(self):
return 'bar'
class D(object):
def foo(self):
return 'baz'
b1 = B(False)
b2 = B(True)
print b1.foo()
print b2.foo()
</code></pre>