zoukankan      html  css  js  c++  java
  • 多线程_02_线程创建

    java常见的创建线程的方式有三种,进阶一点还可以采用线程池进行创建,但是本质上是一样的。

    基础的创建线程通常继承Thread类,实现Runnable和Callable接口的方式也是通过实现类对象作为Thread构造方法的参数的形式进行使用。

    三种方法的主要特点:

       Thread 类,只能单继承

       Runnable接口,可以多实现

     Callable接口,可以多实现,并且可以抛出异常 和有 返回值

    1. 继承类Thread

    public class MyThread extends Thread {
        @Override
        public void run() {
            super.run();
            System.out.println("通过继承Thread创建的线程,线程名称为:" + Thread.currentThread().getName());
            System.out.println("通过继承Thread创建的线程,线程名称为:" + this.getName());
        }
    }
    

    调用方式:

    MyThread myThread = new MyThread();
    myThread.setName("thread");
    myThread.start();

    2. 实现接口Runnable

    Runnable接口截图:

    实现Runnable接口:

    package com.ahd.study;
    
    public class MyRunnable implements Runnable {
        @Override
        public void run() {
            System.out.println("通过实现Runnable接口创建的线程,线程名称为:" + Thread.currentThread().getName());
        }
    }
    

    调用:

    MyRunnable myRunnable = new MyRunnable();
    Thread thread = new Thread(myRunnable);
    thread.setName("runnable");
    thread.start();

    3. 实现接口Callable(callable实现了Runnable接口)

    Callable接口截图:

     实现Callable类:

    package com.ahd.study;
    
    import java.util.concurrent.Callable;
    
    public class MyCallable implements Callable{
        @Override
        public Object call() throws Exception {
            System.out.println("通过实现Callable创建的线程,线程名称为:" + Thread.currentThread().getName());
            return null;
        }
    }

    调用:

    MyCallable myCallable = new MyCallable();
    FutureTask task = new FutureTask(myCallable);
    Thread thread1 = new Thread(task);
    thread1.setName("callable");
    thread1.start();
  • 相关阅读:
    java.lang.NoClassDefFoundError: org/apache/commons/fileupload/disk/DiskFileItemFactory
    连续子数组的最大和
    @Scheduled(cron = "* * * * * *")
    BigDecimal加减乘除计算
    04
    作业03
    作业01
    Haar小波的理解
    Matlab画colormap的一种色彩搭配方法
    单自由度系统中质量、阻尼和刚度变化对频率响应函数(FRF)影响图的绘制
  • 原文地址:https://www.cnblogs.com/aihuadung/p/13153065.html
Copyright © 2011-2022 走看看