多线程实现的三种方法
1、通过继承Thread,并重写里面的run()方法
2、实现Runnable接口,并重写其中run()方法
将runnable类传递给Thread类中
3、实现Callable接口,重写其中的call()方法
Callable接口时有泛型的,该泛型值call()方法返回值的类型
run方法和start方法的区别
start()方法:启动线程,然后由JVM调用线程run方法,和操作系统交互
run()方法:表示仅仅是创建对象,用对象去调用方法,并没有开启线程
设置线程名称
1.使用setName()方法
2.在构造线程类中设置名称,但前提是有空参和有参的构造方法