在java中 线程来使用有两种方法
1.继承Thread类(extend Thread,重写run方法
开启线程的方式 例子:
Dog dog = new Dog();
dog.start
2.实现Runnable接口,重写run方法
Dog dog=new Dog();
Thread thread = new Thread(dog);
thread.start();
并发:同一时刻,多个任务交替执行,单核cpu实现多任务就是并发
并行:同一时刻,多个任务同时执行。多核cpu可以实现并行
xx.start() 启动线程(本质是 start() -> start0()【真正实现多线程的,最重要的是start0()方法,它启动了线程,它调用了run()】)
(start0() 是本地方法,是JVM调用,底层是c/c++实现所以关键字为native)
区别(其实差不多没啥区别)
后续补充…