如何讓一個線程不斷跑起來,并且在取到值的時候能返回值而線程能繼續跑呢?
我們都知道可以用Callable接口獲得線程的返回值,或者觸發事件監聽來操作返回值,下面我將介紹另一種方法。
public abstract class Test implements Runnable { public String A; //開啟線程 public void run() { while(true) { //此處寫該方法的邏輯代碼 //listen()方法操作取得值A listen(A); } } //定義一個抽象方法listen() public abstract void listen(String A); }
這樣,線程取到值將存放在抽象方法listen()里,并且線程也將一直跑起來而不會停止。
當我們需要用到這個值時,只需要重寫listen()方法就可以啦。
public class Main { public static void main(String[] args) { Thread thread = new Thread(new Test() { @Override public void listen(String A) { // TODO Auto-generated method stub } }); thread.start(); }}
以上就是本知識點的全部內容,感謝大家對VeVb武林網的支持。
新聞熱點
疑難解答
圖片精選