java线程

来源:互联网 发布:java中重载的意义 编辑:程序博客网 时间:2024/06/11 06:59

java实现线程的两种方式:

 1. 继承Thread()类,重写run()方法,将线程运行的逻辑放在其中


public class MyThread extends Thread{    private String name;    class MyThread(String name) {         this.name = name;    }    public void run() {        // 线程体,包含了线程要执行的内容        // 写你的逻辑    }}

 2. 实现接口Runnable(),实例化Thread类

public class MyThread2 implements Runnable {    private String name;    public void run(){        // 线程体,包含了线程要执行的内容        // 写你的逻辑    }}public class RunnableDemo{    public static void main(String[] args) {        MyThread2 myThread2 = new MyThread2();        Thread t1 = new Thread(myThread2, "runnable");        t1.start();    }}

它们的区别:

Thread是多个线程分别完成自己的任务,Runnable是多个线程完成一个任务

线程中start()和run()的区别

1. start()方法来启动一个线程,此时线程处于就绪状态,还要接下来调用run()方法来执行
2. run()方法,只是调用一个方法而已,程序顺序执行,没有达到线程的目的
3. start()会新起一个线程来执行,而run()方法是还是在主线程内执行

NOTE:

线程是交替运行的,和你的代码顺序没有关系,和线程的优先级,系统资源的分配有关

0 0
原创粉丝点击