【577、run方法和start方法有什么区别】

332 阅读1分钟

在Java中,Thread类有两个常用的方法:run()方法和start()方法。

  1. run()方法是Thread类中的一个普通方法,用于定义线程的执行逻辑,当线程调用run()方法时,相当于在当前线程中执行了这段逻辑,不会创建新的线程。因此,如果直接调用run()方法,那么代码将在主线程中执行,不会启动新线程。
  2. start()方法是Thread类中的一个启动方法,用于启动一个新线程,并在新线程中执行run()方法中的逻辑。调用start()方法后,JVM会自动创建一个新的线程,并调用该线程的run()方法执行线程中的逻辑。因此,启动一个线程应该调用start()方法而不是直接调用run()方法。

因此,如果要启动一个新线程,应该使用start()方法,如果直接调用run()方法,则会在当前线程中执行run()方法的逻辑,不会启动新的线程。