JAVA线程之三----创建
来源:互联网 发布:查域名注册商 编辑:程序博客网 时间:2024/06/14 14:55
java 线程回顾
创建线程的方式
其实就一种,就是通过Thread类的构造函数来创建,一是无参构造,另一种是通过Runnable对象作为参数来创建。所以他们都是执行的run()方法。
但是习惯称之为继承 thread类和实现Runnable接口来创建线程。
来看代码
package com.sample.runnable;
public class RecomendedThread {
public static void main(String[] args){
Thread t = new Thread(
new Runnable(){
//here is implement of Runnable interface;
@Override
public void run() {
for(int i=0;i<10;i++){
System.out.println(Runnable.class+" "+i);
}
}
}
)
/* {
// here is override of Thread class.
public void run(){
for(int i=0;i<10;i++){
System.out.println(Thread.class+" "+i);
}
}
}*/
;
t.start();
}
}
运行结果如下
interface java.lang.Runnable 0
interface java.lang.Runnable 1
interface java.lang.Runnable 2
interface java.lang.Runnable 3
interface java.lang.Runnable 4
interface java.lang.Runnable 5
interface java.lang.Runnable 6
interface java.lang.Runnable 7
interface java.lang.Runnable 8
interface java.lang.Runnable 9
将注释/**/ 去掉运行结构如下
class java.lang.Thread 0
class java.lang.Thread 1
class java.lang.Thread 2
class java.lang.Thread 3
class java.lang.Thread 4
class java.lang.Thread 5
class java.lang.Thread 6
class java.lang.Thread 7
class java.lang.Thread 8
class java.lang.Thread 9
所以充分说明 如果你既实现了Runnable 的run()方式,又重写了Thread 的run()方法,那么实现Runnable的run()方法将被忽略。
创建线程的方式
其实就一种,就是通过Thread类的构造函数来创建,一是无参构造,另一种是通过Runnable对象作为参数来创建。所以他们都是执行的run()方法。
但是习惯称之为继承 thread类和实现Runnable接口来创建线程。
来看代码
package com.sample.runnable;
public class RecomendedThread {
public static void main(String[] args){
Thread t = new Thread(
new Runnable(){
//here is implement of Runnable interface;
@Override
public void run() {
for(int i=0;i<10;i++){
System.out.println(Runnable.class+" "+i);
}
}
}
)
/* {
// here is override of Thread class.
public void run(){
for(int i=0;i<10;i++){
System.out.println(Thread.class+" "+i);
}
}
}*/
;
t.start();
}
}
运行结果如下
interface java.lang.Runnable 0
interface java.lang.Runnable 1
interface java.lang.Runnable 2
interface java.lang.Runnable 3
interface java.lang.Runnable 4
interface java.lang.Runnable 5
interface java.lang.Runnable 6
interface java.lang.Runnable 7
interface java.lang.Runnable 8
interface java.lang.Runnable 9
将注释/**/ 去掉运行结构如下
class java.lang.Thread 0
class java.lang.Thread 1
class java.lang.Thread 2
class java.lang.Thread 3
class java.lang.Thread 4
class java.lang.Thread 5
class java.lang.Thread 6
class java.lang.Thread 7
class java.lang.Thread 8
class java.lang.Thread 9
所以充分说明 如果你既实现了Runnable 的run()方式,又重写了Thread 的run()方法,那么实现Runnable的run()方法将被忽略。
- JAVA线程之三----创建
- 创建java线程方式之三实现Callable接口
- Java 之 线程的创建和启动(三)
- Java多线程之创建线程
- java线程创建之FutureTask
- Java线程之三 AtomicInteger
- java创建线程的三种方式
- JAVA创建线程的三种方法
- java创建线程的三种方式
- Java创建线程的三种方式
- Java线程创建的三种方式
- 三:如何创建并运行 Java 线程
- java创建线程的三种方法
- Java创建线程的三种方式
- Java创建线程的三种方式
- Java线程的三种创建方式
- java创建线程的三种方式
- java创建线程的三种方式
- 温故
- centos网络配置(手动设置,自动获取)的2种方法
- CFileException
- 格式化数字和货币
- 介绍下去掉虚线框的几种方式
- JAVA线程之三----创建
- c++程序实验报告(12-2)
- Ubuntu挂载U盘问题
- RPM 安装篇 http://www.360doc.com/relevant/309051_more.shtml
- CPSR/SPSR 详解
- UITableView,UITableViewCell,UIPickerView,UISearchBar
- iOS程序lifecycle
- java获取db元数据
- 随机生成十个不重复的整数