我有一个实现Runnable一个主类和两个子类,subClass1和subClass2两个子类之间的变量...如何共享实现Runnable
我已经通过调用同时
运行两个线程
t1.start // T1为subclass1
t2.start // T2为subclass2
现在,我想T1运行,直到日e t2完成。
我可以在子类2中的方法中添加布尔标志来识别执行已完成; 现在我需要将该信息(布尔变量)传递给subclass1以停止执行其中的一组代码。 [使用while(true)loop;]
所以我如何创建一个可以被两个子类访问的公共变量?
任何人都可以请建议我一个解决方案吗?
显示一些代码来解释发生了什么。 SubClass1和SubClass2是Main类的内部类吗?您始终可以将[AtomicBoolean]的相同引用(https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/AtomicBoolean.html)传递给两个子类。 – WalterM
这个问题有点引起你的措辞。你不想在类之间共享一个变量,但是你想在两个实例之间共享一个对象。解决方案非常简单:构建共享对象。将共享对象传递给可运行实现的构造函数。 – SpaceTrucker