java 线程
来源:互联网 发布:携程 知乎 亲子园 编辑:程序博客网 时间:2024/06/06 17:59
两种实现线程方法:
1、继承java.lang.Thread
package com.zbj.thread;/** * 创建thread两步法: * 1、定义类继承java.lang.Thread类 * 2、重新run()方法 * * 调用thread步骤: * 1、实例化线程对象 ,如MyThread01 t=new MyThread01(); * 2、调用线程对象的start(),如t.start() * @author Administrator * */public class MyThread01 extends Thread {@Overridepublic void run() {for (int i = 0; i < 100; i++) {System.out.println("我的线程开始跑了:" + i);}}public static void main(String[] args) {MyThread01 mt1 = new MyThread01();mt1.start();}}
2、实现Runnable接口
package com.zbj.thread;/** * 创建Runnable线程两步法 * 1、实现Runnable接口 * 2、重写run方法 * * * 调用runnable线程步骤: * 1、实例化线程对象 ,如MyThread01 t=new MyThread01(); Thread tt=new Thread(t); * 2、调用线程对象的start(),如tt.start() * @author Administrator * */public class MyThread02 implements Runnable {@Overridepublic void run() {for (int i = 0; i < 100; i++) {System.out.println("我的线程开始跑了:" + i);}}public static void main(String[] args) {MyThread02 thread = new MyThread02();new Thread(thread).start();}}
3、两者的区别
实现runnable接口可以实现资源共享,而 extends Thread则不行。
package com.zbj.thread;public class MyThread03 implements Runnable {private int ticket = 10;public void run() {for (int i = 0; i < 20; i++) {if (this.ticket > 0) {System.out.println( "卖票:ticket" + this.ticket--);}}}public static void main(String[] args) {MyThread03 thread = new MyThread03();new Thread(thread).start();new Thread(thread).start();new Thread(thread).start();//继承Thread的线程这样调用会报错。}}
阅读全文
0 0
- Java线程:什么是线程
- Java线程:线程池
- java线程--线程退出
- JAVA-线程/线程锁
- Java线程:什么是线程
- Java线程:线程中断
- Java线程:线程状态
- Java线程: 线程调度
- Java线程:线程交互
- java--线程--线程池
- java 线程
- Java线程
- java线程
- java线程
- Java线程
- Java线程
- java线程
- JAVA 线程
- 5. Longest Palindromic Substring
- ConcurrentHashMap 总结( 下 )
- 【安全牛学习笔记】HTTP协议基础
- Java线程池ThreadPoolExecutor的execute()原理
- HDU5722-Jewelry
- java 线程
- 第二周第2次课 算法分析基础
- JS 时钟的js实现
- bzoj4385 [POI2015]Wilcze doły
- 【安全牛学习笔记】vega
- SQL语句使用07-------约束
- 搞懂朴素贝叶斯分类算法
- ZigBee CC2530 Z-Stack 22 绑定通信1-概念介紹
- spring boot框架,基于JWS的webservice实例