我正在开发一个研究框架,该框架需要允许用户覆盖核心功能。

我有一个名为TorSocket的核心类,该类具有一个名为createCircuit()的方法,该方法返回一个TorCircuit类。我希望框架的用户能够在不修改源代码的情况下覆盖TorCircuit函数,但是因为创建此类的唯一方法是通过TorSocket.createCircuit()我不确定该如何做。

我已经尝试在TorSocket中创建成员变量,如下所示:

 public Class circuitClass;


然后用户可以执行以下操作:

 sock.circuitClass = class MyCircuitClass extends TorCircuit { ...


并且TorSocket类将使用circuitClass进行实例化。

但是,在“类”中,使用上述代码遇到语法错误。正确的语法是什么?尽管欢迎指点,但我在网上找不到太多内容。

最后,如何使用TorSocket.circuitClass实例化?

非常感谢
加雷斯

最佳答案

采用

class MyCircuitClass extends TorCircuit {...}
sock.circuitClass = MyCircuitClass.class;

09-26 11:31