Runnable實現(xiàn)類實現(xiàn)多線程的代碼
/*
?* 創(chuàng)建線程方式二:
?* 1.創(chuàng)建:實現(xiàn)Runnable+重寫run
?* 2.啟動:創(chuàng)建實現(xiàn)類對象+Thread對象才能調(diào)用start方法
?*/
public class StartRun implements Runnable {
?? ?@Override
?? ?// run是子線程的入口點
?? ?public void run() {
?? ??? ?for(int i=0;i<1000;i++) {
?? ??? ??? ?System.out.println("一邊聽歌");
?? ??? ?}
?? ?}
?? ?public static void main(String[] args) {
?? ??? ?//啟動線程第一步創(chuàng)建實現(xiàn)類對象
//?? ??? ?StartRun st=new StartRun();
?? ??? ?//創(chuàng)建代理類對象也就是Thread對象
//?? ??? ?Thread t=new Thread(st);
?? ??? ?//第二步調(diào)用子類對象的Start方法
//?? ??? ?t.start();? //開啟一個線程交給cpu去調(diào)用??? 不保證立即運行
//?? ??? ?st.run();//run是普通方法的調(diào)用,不是多線程,必須執(zhí)行完成run方法再執(zhí)行下面的代碼
?? ??? ?new Thread(new StartRun()).start();
?? ??? ?for(int i=0;i<500;i++) {
?? ??? ??? ?System.out.println("一邊敲代碼");
?? ??? ?}
?? ?}
}
標簽: