入门篇

来源:互联网 发布:织梦404页面制作 编辑:程序博客网 时间:2024/05/26 02:51

</pre>使用多线程<p></p><p><span style="white-space:pre"></span>直入主题,开门见山</p><p><span style="white-space:pre"></span>实现多线程的方式:</p><p><span style="white-space:pre"></span>1.继承Thread类 2.实现Runnable接口</p><p><span style="white-space:pre"></span>首先看一下Thread类,</p><p><span style="white-space:pre"></span><pre name="code" class="java">public class Thraed implements Runnable  //本身实现了Runnable接口

static int MAX_PRIORITY=10;             //最高线程优先级static int NOR_PRIORITY=5;              //中等线程优先级
static int MIN_PRIORITY=1;              //最低线程优先级

举个简单多线程例子:

public class ThreadDemo extends Thread{@Overridepublic void run() {super.run();System.out.println("myThread  run !!!!!!");}}public class ThreadTest {public static void main(String[] args) {ThreadDemo demo=new ThreadDemo();demo.start();System.out.println("maim !!!!!!!!!!!!!!!");}}

结果为

main !!!!!!!!!!!!!!!!!!!!!!!!!!!

myThraed run !!!!!!!!!!!!!!!!!!!!!!!!!!!

由此看来多线程编程与代码的顺序无关!!!!!cpu以不确定的方式调用run() 方法,


2.start() 方法与run() 方法

start方法

该方法的作用为通知 " 线程规划器” 线程已经准备就绪,等待调用线程对象的run()方法。

如果通过Thread.run()来执行run(),相当于是用main主线程来调用,也就是说必需要等到run方法结束之后才执行后面的代码,单线程


run方法

执行任务块代码



3.第二种实现多线程方式

实现runnable接口

public class ThreadDemo2 implements Runnable{@Overridepublic void run() {System.out.println("run !!!");}}public static void main(String[] args) {/*ThreadDemo demo=new ThreadDemo();demo.start();System.out.println("maim !!!!!!!!!!!!!!!");*/Runnable runnable=new ThreadDemo2();Thread thread=new Thread(runnable);thread.start();System.out.println("main");}}


结果同上。。


这两种的区别不用多说了吧。。java不支持多继承 !!!!!!!!!!!!!!!!!!!!!!哈哈大笑














1 0