JAVA实现多线程入门
来源:互联网 发布:给自己的淘宝店铺取名 编辑:程序博客网 时间:2024/06/06 05:22
1:程序员可以在程序中执行多个线程,每一个线程完成一个功能,并于其他线程并发执行,这种机制被称为多线程
2:实现线程的两种方法是,分别是继承java.lang.Thread或者实现java.lang.Runnable接口
3:Thread类是java.lang包中的一个类,从这个类实例化的对象代表线程
4:完成线程真正功能的代码是放在run()方法中的,当一个类继承Thread类后,就可以在该类中覆盖run()方法,将实现该线程功能的代码写入run()方法中,然后同时调用Thread 类中的strat()方法执行线程,也就是调用run()方法。
1 package com.thread; 2 /** 3 * 1:程序员可以在程序中执行多个线程,每一个线程完成一个功能,并于其他线程并发执行,这种 4 * 机制被称为多线程 5 * 2:实现线程的两种方法是,分别是继承java.lang.Thread或者实现java.lang.Runnable 6 * 接口 7 * 3:Thread泪时java.lang包中的一个类,从这个类实例化的对象代表线程 8 * 4:完成线程真正功能的代码是放在run()方法中的,当一个泪继承Thread类后,就可以 9 * 在该类中覆盖run()方法,将实现该线程功能的代码写入run()方法中,然后同时调用Thread10 * 类中的strat()方法执行线程,也就是调用run()方法。11 * @author biexiansheng12 *13 */14 public class ThreadTest extends Thread {//指定类继承Thread类15 16 private int count=10;17 public void run(){//重写run()方法18 while(true){19 System.out.print(count+" ");//打印count变量20 if(--count==0){//使count变量自减,当自减为0时,退出循环21 return;22 }23 }24 }25 public static void main(String[] args) {26 //new ThreadTest().start();27 Thread t=new ThreadTest();//两种方法都可以实现线程运行28 t.start();29 }30 }
示例如下
1 package com.thread; 2 /** 3 * 1:多线程实例练习 4 * @author biexiansheng 5 * 6 */ 7 public class ThreadTest1 extends Thread{ 8 9 //多线程的实现都是在run()方法中实现的10 public void run(){11 System.out.println(getName()+"登上舞台");12 int count=0;//定义一个变量13 while(count<=100){14 System.out.println(getName()+"登上"+count+"次舞台");15 count++;16 if(count%10==0){17 try {18 Thread.sleep(2000);//捕获异常,休眠2秒19 } catch (InterruptedException e) {20 // TODO Auto-generated catch block21 e.printStackTrace();22 }//23 }24 }25 System.out.println(getName()+"走下舞台");26 }27 public static void main(String[] args) {28 // TODO Auto-generated method stub29 Thread t=new ThreadTest1();30 t.setName("Mr.Thread");31 t.start();32 //new ThreadTest1().start();33 34 //实现Runnable接口35 Thread t1=new Thread(new RunnableTest(),"Ms.Runnable");36 t1.start();37 }38 }39 40 class RunnableTest implements Runnable{41 //写完上一句,类名报错,说明实现一个接口,就要实现这个接口内的方法42 @Override43 public void run() {44 // TODO Auto-generated method stub45 System.out.println(Thread.currentThread().getName()+"走上了舞台");46 //Runnable接口实现getName必须通过线程的currentThread()方法得到47 int count=0;//定义一个变量48 while(count<=100){49 System.out.println(Thread.currentThread().getName()+"登上"+count+"次舞台");50 count++;51 if(count%10==0){52 try {53 Thread.sleep(2000);//捕获异常,休眠2秒54 } catch (InterruptedException e) {55 // TODO Auto-generated catch block56 e.printStackTrace();57 }//58 }59 }60 System.out.println(Thread.currentThread().getName()+"走下舞台");61 62 }63 64 }
0 0
- JAVA实现多线程入门
- Java 多线程入门大全
- Java多线程程序设计入门
- Java多线程程序设计入门
- Java多线程入门
- Java多线程程序设计入门
- Java多线程程序设计入门
- Java多线程程序设计入门
- Java多线程入门
- Java多线程程序设计入门
- Java多线程程序设计入门
- java 多线程入门
- Java多线程程序设计入门
- Java多线程程序设计入门
- Java多线程程序设计入门
- Java多线程程序设计入门
- Java多线程程序设计入门
- Java多线程程序设计入门
- Java WeakReference的理解与使用
- Personal小金库(避免遗忘,优秀的网址会保存于此方便自己查看)
- 在Tomcat中配置数据源
- 将C语言文件生成静态库lib
- 自定义仿 QQ 健康计步器进度条
- JAVA实现多线程入门
- Servlet过滤器的特性
- Qt
- nginx学习文档之二 配置负载均衡-windows配置负载均衡
- JAVA开发工具eclipse中@author怎么改
- Linux
- JSON
- Android 自定义 View 圆形进度条总结
- JAVA学习中Swing概述中的JFrame学习