java Runnable接口如何创建线程

导语:编写多线程程序是为了实现多任务的并发执行,从而能够更好地与用户交互。下面是java Runnable接口创建线程的相关资料,欢迎阅读:

java Runnable接口创建线程

创建一个线程,最简单的方法是创建一个实现Runnable接口的类。

为了实现Runnable,一个类只需要执行一个方法调用run(),声明如下:

public void run()

你可以重写该方法,重要的是理解的run()可以调用其他方法,使用其他类,并声明变量,就像主线程一样。

在创建一个实现Runnable接口的`类之后,你可以在类中实例化一个线程对象。

Thread定义了几个构造方法,下面的这个是我们经常使用的:

Thread(Runnable threadOb,String threadName);

这里,threadOb 是一个实现Runnable 接口的类的实例,并且 threadName指定新线程的名字。

新线程创建之后,你调用它的start()方法它才会运行。

void start();

实例

下面是一个创建线程并开始让它执行的实例:

// 创建一个新的线程

class NewThread implements Runnable {

Thread t;

NewThread() {

// 创建第二个新线程

t = new Thread(this, "Demo Thread");

System.out.println("Child thread: " + t);

t.start(); // 开始线程

}

// 第二个线程入口

public void run() {

try {

for(int i = 5; i > 0; i--) {

System.out.println("Child Thread: " + i);

// 暂停线程

Thread.sleep(50);

}

} catch (InterruptedException e) {

System.out.println("Child interrupted.");

}

System.out.println("Exiting child thread.");

}

}

public class ThreadDemo {

public static void main(String args[]) {

new NewThread(); // 创建一个新线程

try {

for(int i = 5; i > 0; i--) {

System.out.println("Main Thread: " + i);

Thread.sleep(100);

}

} catch (InterruptedException e) {

System.out.println("Main thread interrupted.");

}

System.out.println("Main thread exiting.");

}

}

编译以上程序运行结果如下:

Child thread: Thread[Demo Thread,5,main]

Main Thread: 5

Child Thread: 5

Child Thread: 4

Main Thread: 4

Child Thread: 3

Child Thread: 2

Main Thread: 3

Child Thread: 1

Exiting child thread.

Main Thread: 2

Main Thread: 1

Main thread exiting.

java runnable接口 sleep_java Runnable接口如何创建线程相关推荐

  1. Java并发包——使用新的方式创建线程

    Java并发包--使用新的方式创建线程 摘要:本文主要学习了如何使用Java并发包中的类创建线程. 部分内容来自以下博客: https://www.cnblogs.com/dolphin0520/p/ ...

  2. Java多线程学习总结(7)——创建线程池的正确姿势

    一. 通过Executors创建线程池的弊端 在创建线程池的时候,大部分人还是会选择使用Executors去创建. 下面是创建定长线程池(FixedThreadPool)的一个例子,严格来说,当使用如 ...

  3. 三种创建线程方式之Callable接口

    一.类继承关系及API解析 Callable接口 @FunctionalInterface public interface Callable<V> {V call() throws Ex ...

  4. 创建线程方式2-runnable接口的实现类

    创建线程方式2-runnable接口的实现类 1.创建线程方式2: 2.实现runable接口 3.重写run方法,执行线程对象需要丢入runnable接口的实现类 4.调用strat(): 5.使用 ...

  5. 除了Thread和Runnable,你还知道第三种创建线程的方式Callable吗

    相信大多数学过多线程的同学都知道创建线程常见的有三种方式,一种是继承Thread类,一种是实现Runnable接口,最后一种就是Callable,今天主要是对最后不常见的Callable方式进行介绍. ...

  6. java线程的创建线程_多线程(Thread、线程创建、线程池)

    第1章 多线程 1.1 多线程介绍 学习多线程之前,我们先要了解几个关于多线程有关的概念. 进程:进程指正在运行的程序.确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序, ...

  7. Java多线程 - Java创建线程的4种方式

    文章目录 1. Java创建线程有哪几种方式? 1.1 线程创建方法一:继承Thread类创建线程类 1.2 线程创建方法二:实现Runnable接口创建线程目标类 1.5 线程创建方法三:使用Cal ...

  8. Java创建线程的两个方法

    Java提供了线程类Thread来创建多线程的程序.其实,创建线程与创建普通的类的对象的操作是一样的,而线程就是Thread类或其子类的实例对象.每个Thread对象描述了一个单独的线程.要产生一个线 ...

  9. Java创建线程Thread的两个方法

     Java提供了线程类Thread来创建多线程的程序.其实,创建线程与创建普通的类的对象的操作是一样的,而线程就是Thread类或其子类的实例对象.每个Thread对象描述了一个单独的线程.要产生 ...

最新文章

  1. ps制作20种特效文字_ps技巧:给照片制作特效(刀光剑影)
  2. 为何生命进化的方向是衰老,而不是永生?
  3. 花了一上午,终于完成了作业
  4. mysql的端点在哪查看_数据库镜像端点
  5. vs调试c语言检查内存泄露,VisualStudio中检查内存泄露方法
  6. Redis 集群介绍
  7. php mysql设计中常问_PHP开发中常见的设计模式
  8. 5.Excel日期时间函数类应用
  9. 需要写的一些pycoe
  10. BZOJ 1070: [SCOI2007]修车
  11. MySQL打不开用户_mysql打不开了
  12. Java 多线程编程
  13. Neural Turing Machines-NTM系列
  14. Python 使用itchat 获取微信好友信息并解析(性别 区域 头像 签名等)
  15. eclipse中左边的package文件列表不见了,解决方法
  16. java 挑战性_想接受Java挑战吗?
  17. one algorithm a day keeps the doctor away -- BubbleSort
  18. 在达沃斯使用约会软件是怎样一番体验
  19. uc浏览器怎么看历史记录 uc浏览器网页历史记录查看方法
  20. 如何读取环境变量值?Go 每日一库之 godotenv

热门文章

  1. 3dmaxuv展开很多线_考研 | 最全考研复试时间线!参考价值超大!
  2. seo代码优化工具_谁是「南京SEO」搜索引擎网站关键词排名优化专家
  3. python自动化测试-python自动化之(自动化测试报告)
  4. python是什么-了解什么是Python面向对象(1)
  5. 语音识别技术的发展历程,语音识别是如何工作的?语音识别资料概述
  6. 远场(far-field)语音识别的主流技术有哪些?
  7. ES6数组的扩展~超详细、超好理解哦
  8. 计算机老师的专业发展怎么写,高职计算机教师专业发展研究
  9. 【贪心】蓝桥2020:答疑
  10. 蓝桥杯2014c++真题:切面条