Day2-Java面试题实现线程的几种方式?

简介: 在Java面试中面试官常常会问这样一道面试题:Java面试题实现线程的几种方式?这道题看似简单也会难道很多人,下面总结一些实现线程的几种方式。

在Java面试中面试官常常会问这样一道面试题:Java面试题实现线程的几种方式?

这道题看似简单也会难道很多人,下面总结一些实现线程的几种方式。


第一种:通过实现Runnable接口

创建步骤:


1、通过实现Runnable接口创建线程执行类

2、通过重写Runnable中的run方法,编写线程执行代码

3、创建线程Thread对象,将线程执行对象传递给它

4、开始线程

第二种:通过继承Thread线程类

创建步骤:


1、通过继承Thread线程类创建线程执行类


2、定义构造方法,通过super调用父类Thread构造方法 这两个Thread类

构造方法:


Thread(String name):name为线程指定一个名字。

Thread():线程名字是JVM分配的。


3、通过重写Thread中的run方法,编写线程执行代码


4、创建线程执行对象,将参数传递给它


5、开始线程


示例代码:

class DogThread extends Thread{
    @Override
    public void run(){
        System.out.println("dog eat");
    }
}
class CatRunnable implements Runnable{
    @Override
    public void run() {
        System.out.println("cat eat");
    }
}
public class TestThread {
    public static void main(String[] args) {
        // 方案一:
        DogThread dogThread = new DogThread();
        dogThread.start();
        // 方案二:
        Thread thread = new Thread(new CatRunnable());
        thread.start();
//        使用内部类写法
        Thread t1 = new Thread(new Runnable() {
            @Override
            public void run() {
                System.out.println("cat eat");
            }
        });
        t1.start();
//        使用lambda表达式写法
        Thread t2 = new Thread(() ->{
            System.out.println("cat eat");
        });
        t2.start();
    }
}

运行结果:

dog eat
cat eat
cat eat
cat eat
相关文章
|
3月前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
202 1
|
3月前
|
JSON 网络协议 安全
【Java基础】(1)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
229 1
|
4月前
|
数据采集 存储 弹性计算
高并发Java爬虫的瓶颈分析与动态线程优化方案
高并发Java爬虫的瓶颈分析与动态线程优化方案
Java 数据库 Spring
183 0
|
4月前
|
算法 Java
50道java集合面试题
50道 java 集合面试题
|
4月前
|
算法 Java
50道java基础面试题
50道java基础面试题
|
4月前
|
算法 Java
Java多线程编程:实现线程间数据共享机制
以上就是Java中几种主要处理多线程序列化资源以及协调各自独立运行但需相互配合以完成任务threads 的技术手段与策略。正确应用上述技术将大大增强你程序稳定性与效率同时也降低bug出现率因此深刻理解每项技术背后理论至关重要.
300 16
|
5月前
|
缓存 并行计算 安全
关于Java多线程详解
本文深入讲解Java多线程编程,涵盖基础概念、线程创建与管理、同步机制、并发工具类、线程池、线程安全集合、实战案例及常见问题解决方案,助你掌握高性能并发编程技巧,应对多线程开发中的挑战。
|
5月前
|
数据采集 存储 前端开发
Java爬虫性能优化:多线程抓取JSP动态数据实践
Java爬虫性能优化:多线程抓取JSP动态数据实践

热门文章

最新文章