线程的简单小列子- 龟兔赛跑-继承Thread类
来源:互联网 发布:linux监控服务器性能 编辑:程序博客网 时间:2024/06/05 20:00
简单 小列子 以便理解 start 和 run 方法的区别
第一步定义一个 兔子 类 实现run方法:
package com.java.thread.test;
//实现线程 继承 thread接口 或者 实现 runnable接口
public class rabbit extends Thread {
@Override
public void run() {
//线程体
for(int i=1;i<11;i++){
System.out.println("兔子跑了"+i+"步");
}
}
}
第二步 同样定义一个 乌龟 类 实现run方法:
package com.java.thread.test;
public class tortoies extends Thread {
@Override
public void run() {
//线程体
for(int i=1;i<11;i++){
System.out.println("乌龟跑了"+i+"步");
}
}
}
第三步:main方法 :
/**
* 调用线程
* @author Administrator
*如何调用线程: 1 实例对象 2 对象.start方法
*/
public class rabbitApp {
public static void main(String[] args) {
//第一步实例对象
rabbit rb = new rabbit();
tortoies tor = new tortoies();
//第二步 对象.start方法
rb.start(); //线程启动方法 不代表线程就运行,此方法 将线程假如线程组,等待我们cpu的调用.
tor.start();
}
}
运行结果:
兔子跑了1步
兔子跑了2步
乌龟跑了1步
兔子跑了3步
乌龟跑了2步
兔子跑了4步
乌龟跑了3步
兔子跑了5步
乌龟跑了4步
兔子跑了6步
乌龟跑了5步
兔子跑了7步
乌龟跑了6步
兔子跑了8步
兔子跑了9步
兔子跑了10步
乌龟跑了7步
乌龟跑了8步
乌龟跑了9步
乌龟跑了10步
如果在main方法里面 不调用 start 方法 而是run方法,
public static void main(String[] args) {
//第一步实例对象
rabbit rb = new rabbit();
tortoies tor = new tortoies();
rb.run();//这个调用 只是对象内部方法 并不是启动线程
tor.run();
}
结果:
兔子跑了1步
兔子跑了2步
兔子跑了3步
兔子跑了4步
兔子跑了5步
兔子跑了6步
兔子跑了7步
兔子跑了8步
兔子跑了9步
兔子跑了10步
乌龟跑了1步
乌龟跑了2步
乌龟跑了3步
乌龟跑了4步
乌龟跑了5步
乌龟跑了6步
乌龟跑了7步
乌龟跑了8步
乌龟跑了9步
乌龟跑了10步
因为run方法只是 对象的一个普通方法,并不会启用线程, 只有一个main方法 主线程 执行我们的程序,所以就一条线 从上往下执行完毕.
- 线程的简单小列子- 龟兔赛跑-继承Thread类
- Strtus2 简单的小列子
- 继承Thread类的线程实现方法
- 对Thread类的继承、Runable接口的实现,以及线程池的简单理解
- 线程之龟兔赛跑
- FragmentTabHost的小列子
- android 的线程绘制View(简单列子)
- 线程之继承Thread类
- 线程学习--继承Thread类
- 最简单的列子
- JAVA8的简单列子
- 创建线程的方法一:继承Thread类
- 创建线程的方式一:继承Thread类
- 创建线程的第一种方法:继承Thread类
- 通过继承Thread类的方式创建两个线程
- java线程之龟兔赛跑
- 多线程小案例之龟兔赛跑
- Jamil的一个小列子
- Zoj 2868 Incredible Cows (分半dfs暴搜)
- Spring MVC--8.JSON、国际化、文件上传
- task struct
- Java通过代理访问互联网平台提供的WebService接口的一种方法
- MYSQL性能优化详解(一)
- 线程的简单小列子- 龟兔赛跑-继承Thread类
- AngularJS 路由和多视图
- 13.线程间通信
- Linux中内核控制块task_struck
- 跟着内核学框架-从misc子系统到3+2+1设备识别驱动框架
- AngularJS 路由和多视图2
- 剑指:用两个队列实现栈的先进后出
- 欢迎使用CSDN-markdown编辑器
- Java中,overload与override的区别