我正在使用 MVC 模型,并尝试在 Controller 中创建一个线程。当我在内部类 run() 中时,我需要获得正确的模型,但它抛出一个空指针。
以下是从外部 Controller 创建内部类和线程的代码:
Thread thread = new Thread(new runWithThread(OpsSec, AmToChange, AgentID, balance, currency, selected_account_obj));
thread.start();
在 runWithThread 中,我尝试获取正确的模型。 AMModel 是 Model 类,withdraw 是其中的一个方法。 getModel 是在我扩展的抽象 Controller 中定义的(实现继承)。
((AMModel)getModel()).withdraw(10, "USD");
它在外部类中有效,但在内部类中无效,我不确定为什么我使用 ((AMModel)getModel()) 获取空指针。任何帮助,将不胜感激。谢谢
我意识到了错误。我在 Controller 外部类和 runWithThread 内部类中都有“extends AbstractController”。我正在使用 Rational Arch,它没有标记任何内容,因此我没有注意到该错误。
我是一名优秀的程序员,十分优秀!