从头认识多线程-1.1 多线程的创建
2016-04-07 09:53
344 查看
这一章节我们来简单回顾一下多线程的创建,其实这个在之前的从头认识java的系列文章里面已经聊到过这个话题,在这里重新梳理一遍,当成这个系列的开篇。
1.继承Thread
Thread的构造器
Thread的构造器里面可以放入几种类型的参数,我这里只是展示默认的和Thread(String name)这两个,后面会慢慢的把其他的也融入到文章里面
(1)使用默认的构造器
输出:
start
begin to run
end to run
(2)使用带名字的构造器
start
Thread 线程A begin to run
Thread 线程A end to run
2.实现Runnable
输出:
start
begin to run
由于java是单根继承,因此,我们更多的时候会使用实现Runnable的方式来实现多线程。
总结:这一章节简单的回顾一下多线程的创建。
我的github:https://github.com/raylee2015/DeepIntoThread
1.继承Thread
Thread的构造器
Thread()Allocates a new Threadobject. |
Thread(Runnable target)Allocates a new Threadobject. |
Thread(Runnable target, String name)Allocates a new Threadobject. |
Thread(String name)Allocates a new Threadobject. |
Thread(ThreadGroup group, Runnable target)Allocates a new Threadobject. |
Thread(ThreadGroup group, Runnable target, String name)Allocates a new Threadobject so that it has targetas its run object, has the specified nameas its name, and belongs to the thread group referred to by group. |
Thread(ThreadGroup group, Runnable target, String name, long stackSize)Allocates a new Threadobject so that it has targetas its run object, has the specified nameas its name, and belongs to the thread group referred to by group, and has the specified stack size. |
Thread(ThreadGroup group, String name)Allocates a new Threadobject. |
(1)使用默认的构造器
package com.ray.deepintothread.ch01.topic_1; public class SimpleExtendThread { public static void main(String[] args) { ThreadOne threadOne = new ThreadOne(); Thread thread = new Thread(threadOne); System.out.println("start"); thread.start(); } } class ThreadOne extends Thread { @Override public void run() { System.out.println("begin to run"); super.run(); System.out.println("end to run"); } }
输出:
start
begin to run
end to run
(2)使用带名字的构造器
package com.ray.deepintothread.ch01.topic_1; public class SimpleExtendThread2 { public static void main(String[] args) { ThreadOne2 threadOne = new ThreadOne2("线程A"); Thread thread = new Thread(threadOne); System.out.println("start"); thread.start(); } } class ThreadOne2 extends Thread { private String name; public ThreadOne2(String name) { this.name = name; } @Override public void run() { System.out.println("Thread " + name + " begin to run"); super.run(); System.out.println("Thread " + name + " end to run"); } }
start
Thread 线程A begin to run
Thread 线程A end to run
2.实现Runnable
package com.ray.deepintothread.ch01.topic_1; public class SimpleRunnableImpl { public static void main(String[] args) { RunnableOne threadOne = new RunnableOne(); Thread thread = new Thread(threadOne); System.out.println("start"); thread.start(); } } class RunnableOne implements Runnable { @Override public void run() { System.out.println("begin to run"); } }
输出:
start
begin to run
由于java是单根继承,因此,我们更多的时候会使用实现Runnable的方式来实现多线程。
总结:这一章节简单的回顾一下多线程的创建。
我的github:https://github.com/raylee2015/DeepIntoThread
相关文章推荐
- window.open详解
- WEB测试方法
- Linux查看物理CPU个数、核数、逻辑CPU个数
- jQuery 属性操作 - removeAttr() 方法
- poj3186 dp
- php中高级基础知识点
- Spark RDD揭秘
- 设计模式之命令模式
- 再玩 DevStack(Mitaka版)- 基于 trystack.cn 源
- DefaultAnnotationHandlerMapping 和 AnnotationMethodHandlerAdapter 的使用已经过时!
- 神经网络基本概念
- Android Studio debug使用release的签名
- win7启动本地MongoDB的四种方式
- UIWebView页面加载不出来的解决方案
- 每天laravel-20160702|CacheTableCommand
- iOS动画开发之五——炫酷的粒子效果
- Oracle密码过期the password has expired解决办法
- VS2008 IDE连接 ORACLE后新建查询 无响应或者长时间等待
- Windows下 maven3.0.4的安装步骤+maven配置本地仓库
- win10 设置 计算机/此电脑/我的电脑 图标到桌面上