1
ayanamist 2012-03-23 07:38:20 +08:00
请使用Builder模式,可以满足你的全部需求。
|
3
ayanamist 2012-03-23 15:26:21 +08:00
@ry_wang 写一个Builder类,初始化出一个Builder类,把所有的初始化参数用方法设定,接着写一个getInstance方法,返回一个数据类。在调用这个方法的时候可以用异常捕获超时,也可以很方便的实现单例保证只调用一次。这个数据类也可以直接传递到下游去使用。
如果初始化参数不复杂,也可以直接用一个类的静态方法。 |
4
ry_wang OP |
5
ry_wang OP |
6
ayanamist 2012-03-27 20:37:22 +08:00
|
7
rexren 2012-05-11 01:42:05 +08:00
差不多就是factory pattern的思路
|
8
phuslu 2012-05-11 01:51:02 +08:00
额,python标准库的手法一般是这样:
def __init__(self): self._sock = None def connect(self): self._sock = socket.create_connection(...) def XXX_method(self): if self._sock is None: 在此raise Exception或者调用self.connect() |