色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

Java里面start和run的區別

楊一鳴1年前6瀏覽0評論

在Java編程中,我們總會用到線程相關的概念。而在線程的使用中,start和run兩個方法都非常重要,但是它們之間有什么區別呢?

public class ThreadTest extends Thread {
@Override
public void run() {
System.out.println("ThreadTest Running!");
}
public static void main(String[] args) {
ThreadTest thread = new ThreadTest();
thread.run();
// thread.start();
}
}

在上面的代碼中,ThreadTest類繼承了Thread類,并重寫了其run方法。在main方法中,我們創建了一個ThreadTest對象,并調用了其run方法。我們可以看到,輸出的內容為"ThreadTest Running!"。

但是,如果我們將上面的代碼中thread.run()語句改為thread.start(),那么程序輸出的內容將會發生變化。

public class ThreadTest extends Thread {
@Override
public void run() {
System.out.println("ThreadTest Running!");
}
public static void main(String[] args) {
ThreadTest thread = new ThreadTest();
// thread.run();
thread.start();
}
}

在上面的代碼中,我們將thread.run()改為了thread.start()。那么程序輸出的內容將會是"ThreadTest Running!"加上一些其他內容。這是因為start方法會啟動一個新的線程,而新的線程會在其自己的執行上下文中調用run方法。因此,我們會同時看到"ThreadTest Running!"和其他的輸出內容。

綜上可以看出,run方法只是普通的方法調用,而start方法才是真正啟動線程的方法。