如我们所见,send方法没有重载。在
from socket import socket
class PolySocket(socket):
def __init__(self,*p):
print "PolySocket init"
socket.__init__(self,*p)
def sendall(self,*p):
print "PolySocket sendall"
return socket.sendall(self,*p)
def send(self,*p):
print "PolySocket send"
return socket.send(self,*p)
def connect(self,*p):
print "connecting..."
socket.connect(self,*p)
print "connected"
HOST="stackoverflow.com"
PORT=80
readbuffer=""
s=PolySocket()
s.connect((HOST, PORT))
s.send("a")
s.sendall("a")
输出:
^{pr2}$
我确信你实际上并不需要它,还有其他方法来解决你的任务(不是子类化而是真正的任务)。在
如果您确实需要模拟对象,请使用代理对象:
输出如下:
^{pr2}$相关问题 更多 >
编程相关推荐