<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Cyh的博客

    Email:kissyan4916@163.com
    posts - 26, comments - 19, trackbacks - 0, articles - 220

    線程1--定義和啟動線程

    Posted on 2009-06-02 19:46 啥都寫點 閱讀(374) 評論(0)  編輯  收藏 所屬分類: J2SE
    關鍵技術:
    • 線程類必須實現java.lang.Runable接口或者繼承java.lang.Thread類,并且實現run方法,run方法沒有返回值,也沒有輸入參數,也不允許拋出異常。
    • 調用Thread類的start實例方法啟動一個線程。調用該方法后,線程準備啟動,當獲得CPU資源時,start方法將自動調用run方法,線程才真正開始運行。

    package book.thread;

    import java.util.Date;

    public class DefineThread {
        
    /**
         * 通過繼承java.lang.Thread類定義線程
         
    */
        
    class ThreadA extends Thread{
            
    /**    線程被運行的時刻    */
            
    private Date runDate;
            
    /**
             * 當線程被運行時調用此方法
             
    */
            
    public void run(){
                System.out.println(
    "ThreadA begin,");
                
    this.runDate = new Date();
                System.out.println(
    "ThreadA end.");
            }
        }
        
        
    /**
         * 通過實現java.lang.Runnable接口定義線程
         
    */
        
    class ThreadB implements Runnable{
            
    /**    線程被運行的時刻    */
            
    private Date runDate;
            
    public void run(){
                System.out.println(
    "ThreadB begin,");
                
    this.runDate = new Date();
                System.out.println(
    "ThreadB end.");
            }
        }
        
    /**
         * 啟動一個ThreadA線程
         
    */
        
    public void startA(){
            Thread threadA 
    = new ThreadA();
            
    //調用Thread的start方法啟動線程
            threadA.start();
        }
        
    /**
         * 啟動一個ThreadB線程
         
    */
        
    public void startB(){
            Runnable tb 
    = new ThreadB();
            
    //用Runnable對象構造線程
            Thread threadB = new Thread(tb);
            threadB.start();
        }
        
        
    public static void main(String[] args) {
            DefineThread test 
    = new DefineThread();
            
    //線程的運行具有不確定性,先啟動的線程不一定先運行,取決于虛擬機。
            test.startA();
            test.startB();
        }
    }



                                                                                                           --    學海無涯
            

    主站蜘蛛池模板: 国产精品无码一区二区三区免费| 无码国产精品一区二区免费式芒果 | 免费在线观影网站| 亚洲女同成av人片在线观看| 中文日本免费高清| 伊人亚洲综合青草青草久热| 国产高潮流白浆喷水免费A片 | 一区国严二区亚洲三区| 一区二区三区免费视频观看| 久久国产成人亚洲精品影院| 中文字幕手机在线免费看电影| 亚洲开心婷婷中文字幕| 99爱在线观看免费完整版| 久久久无码精品亚洲日韩蜜桃| 日韩av无码久久精品免费| 亚洲三级在线视频| 国产网站在线免费观看| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 青青视频观看免费99| 亚洲乱理伦片在线观看中字| 免费A级毛片无码久久版| 国产免费一区二区三区免费视频| 亚洲av日韩av不卡在线观看 | 久久久久久影院久久久久免费精品国产小说 | 成人五级毛片免费播放| 国产成人人综合亚洲欧美丁香花| 亚洲午夜日韩高清一区| 免费人成网站在线观看不卡| 亚洲AV成人噜噜无码网站| 亚洲AV无码乱码精品国产| 国产成人精品无码免费看 | 全黄A免费一级毛片| 亚洲AV永久无码区成人网站| 真人做A免费观看| 五月天国产成人AV免费观看| 亚洲一级二级三级不卡| 国产色婷婷精品免费视频| a级毛片高清免费视频就| 亚洲狠狠色丁香婷婷综合| 亚洲女久久久噜噜噜熟女| 国国内清清草原免费视频99|