Java主线程和其余线程的区别和实践(Main、Runnable、Thread)

在日常的开发中,很多一些开发中较常见的问题,还是需要去仔细研究一下,最重要的还是实践。以小见大。

一、Java线程中。Main、Runnable和Thread。

相信在工作中,只要是有用到多线程异步编程,最起码都要和这三个打交道。
1、每个Java应用程序都有一个执行Main()函数的默认主线程。这个就是主线程
2、应用程序也可以创建线程在后台运行。Java主要是通过Java.Lang.Thread类以及Java.lang.Runnable接口来实现线程机制的。这边所有的都是其余线程
本贴主要是从实践角度来实践一下多种不同的写法。
以小处来窥见大的知识点。

二、下面来看一个Runnable接口的使用方法

注意这是一个接口

package com.newframe.controllers.api;

public class TestRunnable {

    public static void main(String[] args) {

        /**
         * 在Java8之前,这是唯一一种创建Runnable的方式
         */
        Runnable r1 = new Runnable() {
            @Override
            public void run() {
                System.out.println("这是Java8以前的创建runnable的方式");
            }
        };

        /**
         * 在Java8引入了lambda表达式后的方式
         */
        Runnable r2 = () -> System.out.println("这是Java8引入了lambda表达式后创建的runnable的方式");

        /**
         * 在这边,你这样调用.run()即可运行,当然,我们一搬不这样做。
         */
        r1.run();
        r2.run();

        /**
         * 我们一搬都是将Runnable对象传递到Thread类接收Runnable作为参数的构造函数中
         * 然后启动该线程
         */
        //下面这个线程就是
        Thread t1 = new Thread(r1);
        t1.start();
    }
}

三、关于Thread类的使用

步骤一、

package com.newframe.controllers.api;

/**
 * 创建一个MyThread类来继承Thread类
 */
public class MyThread extends Thread{

    //在使用这个MyThread实现类的时候,首先要先重写他的run方法,让他去做你要求的事

    @Override
    public void run() {
        //例如
        System.out.println("请去给我找个靠谱的工作");
        //下面这一句可以不要
        // super.run();
    }
}

步骤二、

package com.newframe.controllers.api;

public class TestMyThread {

    public static void main(String[] args) {

        //创建MyThread类对象
        MyThread myThread = new MyThread();
        //调用重写过的run方法
        //输出:请去给我找个靠谱的工作
        myThread.run();
    }
}

上面是两个最简单的多线程的实践。
希望能抛砖引玉。

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值