JAVA多线程-创建启动线程

首先了解进程跟线程

进程是指运行中的应用程序,每个进程都有自己的独立内存空间,线程是进程中的一个实体,线程是系统运行的最小单位,是被系统独立调度和分配的基本单位,与同一个进程中的其他线程共享进程的所有资源。

线程的创建

线程创建有两种最基本的方式,继承Thread类和实现Runnable接口,我们看Thread源码可以知道,实际上Thread也是实现了Runnable接口。

public  class Thread implements Runnable {

下面通过两种方式分别创建线程:

首先继承Thread

pckage com.ck.thread;

public class ThreadOne extends Thread{

    @Override

    public void run() {

        System.out.println(this.getName());

    }

}

注意继承Thread类时候一定要覆写run方法,否则线程启动的时候会默认调用Thread的run方法,就是啥事也没干了,接下来我们启动线程:

package com.ck.thread;


public class RunThread {

    public static void main(String[] args) {

        ThreadOne t1 = new ThreadOne();

        t1.start();

    }

}

这样就启动了一个线程,我们看下运行结果:

Thread-0

注意启动一个线程调用的是start方法而不是run方法,调用run方法只是作为一个对象调用其方法,并不是启动线程。

第二种就是同Thread一样实现Runnable接口:

public class ThreadTwo implements Runnable{

    @Override

    public void run() {

        System.out.println(Thread.currentThread().getName());   

    }
}

启动线程:

public class RunThread {

    public static void main(String[] args) {

        ThreadOne t1 = new ThreadOne();

        t1.start();

        Runnable r2 = new ThreadTwo();

        Thread t2 = new Thread(r2);

        t2.start();

    }

}

注意启动实现Runnable的线程与继承Thread的方式略有不同需要初始化Runnable类型的对象,作为参数传递到Thread中,看下运行结果

Thread-0

Thread-1

这是最简单的线程使用,实际上实现线程的还有其他方式比如Callable。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值