龙空技术网

java实现多线程的两种方式

小瓜瓜666 195

前言:

目前姐妹们对“java实现多线程的方式”都比较讲究,兄弟们都想要了解一些“java实现多线程的方式”的相关文章。那么小编在网摘上汇集了一些有关“java实现多线程的方式””的相关资讯,希望咱们能喜欢,你们一起来学习一下吧!

1.编写一个类,直接继承 java.lang.Thread, 重写run方法。具体代码如下:

我们来一行一行分析:

MyThread myThread = new MyThread(); 新建一个分支对象

myThread.start(); 启动一个分支线程,在JVM中开辟一个新的栈空间,这段代码任务完成之后,瞬间就结束了。这段代码的任务只是为了开辟一个新的栈空间,只要新的栈空间开出来,start()方法就结束了。栈线程启动成功了,启动成功的线程自动调用run方法,并且run方法在分支栈的底部(压栈)

好了,我们看下多线程运行的内存图

2.第二种方式:编写一个类,实现 java.lang.Runnable接口,实现run方法。

直接看代码实现:

运行结果如下:

注意:第二种方式实现接口比较常用,应为一个类实现了接口,它还可以去继承其它的类,更灵活。

第二种方式还可以通过匿名内部类来创建线程对象,代码如下:

标签: #java实现多线程的方式