1. 程式人生 > >自定義類MyThread 實現Runnable介面,主函式建立5個執行緒,自定義執行緒類的建構函式輸出 建立執行緒X

自定義類MyThread 實現Runnable介面,主函式建立5個執行緒,自定義執行緒類的建構函式輸出 建立執行緒X

package com.heima.gu;

import java.util.HashMap;

public class Test01 {
    /**自定義類MyThread 實現Runnable介面,主函式建立5個執行緒,自定義執行緒類的建構函式輸出  建立執行緒X 
     * run方法內統計每個執行緒 一共6次
     * 用hashmap 集合 統計每個執行緒的次數,建立一個集合。
     * @param args
     */
    static HashMap<String, Integer> hm = new HashMap<String, Integer>();
    public
static void main(String[] args) { for(int i = 1; i <= 5;i++){ new Thread(new MyThread1("執行緒"+i),"執行緒"+i){ }.start(); hm.put("執行緒"+i, 0); } } } class MyThread1 implements Runnable{ public MyThread1(String str){ System.out.println("建立"
+str); } int count = 6; @Override public void run() { while(true){ synchronized (MyThread.class) { String threadName = Thread.currentThread().getName(); if(Test01.hm.get(threadName) >= count){ break
; }else{ Test01.hm.put(threadName, Test01.hm.get(threadName)+1); System.out.println(threadName+" :計數"+ Test01.hm.get(threadName)); } } } for (String str : Test01.hm.keySet()) { System.out.println("**"+str+"*******"+Test01.hm.get(str)); } } }