java的多线程中实现runnable接口或者继承Thread类的类实现多线程时只有run方法的代码才会多线程?

时间:2021-08-15 14:00:05
java的多线程中实现runnable接口或者继承Thread类的类实现多线程时只有run方法的代码才会多线程?
一个实现runnable方法的类:

 class Test implements Runnable{
    
 private int y=0;
 private int x=0;
 
 public void test1(){                                //非run方法
 
 for(int i=0;i<10;i++){
 
 System.out.println("非run方法的方法的计算值x="+x++);
 }
 }
@Override
public synchronized void run() {                     //run方法
// TODO Auto-generated method stub

for(int i=0;i<10;i++){
 
System.out.println("run方法的方法的计算值y="+y++);
}
}

}
 主程序:
public class Testc {
/**
 * @param args
 */
public static void main(String[] args) {
// TODO Auto-generated method stub
       Test test = new Test();
       
       Thread thread1 = new Thread(test);
       Thread thread2 = new Thread(test);
       
       thread1.start();
       thread2.start();       
}
}
结果:
java的多线程中实现runnable接口或者继承Thread类的类实现多线程时只有run方法的代码才会多线程?

4 个解决方案

#1


start方法会让jvm调用线程的run方法

#2


这是系统默认的 继承  相当于你重写 父类的方法了   除非你把父类的Run() 名称改了

#3


我刚刚明白了,可以在run方法中调用其他普通的方法,实现线程的调用,不知道理解的对不对或者还有其他途径,请大神们指教。

#4


通过线程的start去启动线程中的run方法,接着里面在这么是我们看继承的类如何去写

#1


start方法会让jvm调用线程的run方法

#2


这是系统默认的 继承  相当于你重写 父类的方法了   除非你把父类的Run() 名称改了

#3


我刚刚明白了,可以在run方法中调用其他普通的方法,实现线程的调用,不知道理解的对不对或者还有其他途径,请大神们指教。

#4


通过线程的start去启动线程中的run方法,接着里面在这么是我们看继承的类如何去写