多线程-作业1Thread

// 随便选择两个城市作为预选旅游目标。 西藏 云南
//实现两个独立的线程分别显示10次城市名,每次显示后休眠一段随机时间(1000ms以内),
//哪个先显示完毕,就决定去哪个城市。
//分别用Runnable接口和Thread类实现。

package com.hanqi.xc;

public class HomeworkThread {

    public static void main(String[] args) {

        Travel xz=new Travel();
        xz.setName("西藏");
        xz.start();

        Travel yn=new Travel();
        yn.setName("云南");
        yn.start();

    }

}
package com.hanqi.xc;

import java.util.Random;

public class Travel extends Thread{

    @Override
    public void run() {
        // TODO 自动生成的方法存根
        lvyou();
    }

    public void lvyou()
    {

        Random rand=new Random();
        int t=rand.nextInt(1000);//0-1000 包括0 不包括1000
        for(int i=0;i<10;i++)
        {

            System.out.println(Thread.currentThread().getName()+"Go");

            try {
                Thread.sleep(t);
            } catch (InterruptedException e) {
                // TODO 自动生成的 catch 块
                e.printStackTrace();
            }

        }

    }

}

运行结果:

时间: 2024-07-30 20:00:34

多线程-作业1Thread的相关文章

多线程作业

编写一个程序,开启3个线程,这3个线程的ID分别为A.B.C,每个线程将自己的ID在屏幕上打印10遍,要求输出结果必须按ABC的顺序显示:如:ABCABC-依次递推. 编写一个程序,开启100个删除链表结点的线程,100个插入链表结点的线程,每个线程无限循环进行删除和插入操作,当从命令行输入空格时,结束所有线程并退出程序.

OO作业总结第二弹

这个四月,多线程电梯,IFFF文件管理,出租车系列作业之--version1.(鬼知道我经历了什么......) 不用说,三个作业都不是什么省油的灯(白眼).那先从电梯系列作业终极版--多线程电梯说起吧. 因为之前的电梯程序我写的并不好,在之前的两个版本中我也没对代码做大篇幅的改动,所以各种设计缺陷累积起来,旧的代码怕是扛不住多线程的折腾了,所以我干脆重新架构写了一份全新的多电梯调度作业.大概的设计就是把请求类用继承的方法衍生出了电梯请求和楼层请求这两个子类,似乎比较方便判断和管理:电梯类里面是

渐入OO课的深处,探索多线程的秘密——OO第二次博客总结

一次又一次的挑战,一次又一次全新的知识,我来到了多线程的面前 第五次作业 1.度量分析 >第五次作业由于很大程度上调用的是前两次电梯的一些代码,所以存在的问题与前几次也十分相似.同时由于第一次使用多线程来解决问题,可能将某些功能过于集中的放在了个别类中.导致McCabe Cyclomatic Complexity以及Nested Block Depth出现标红的现象. 2.类图 >这次在类图上面问题体现的也很明显,在方法的分配上并没有做的很平均.这主要是由于为第一次多线程作业,所以将大部分的功

Hybrid APP 架构设计思路

关于Hybrid模式开发app的好处,网络上已有很多文章阐述了,这里不展开. 本文将从以下几个方面阐述Hybrid app架构设计的一些经验和思考. 原文及讨论请到 github issue 通讯 作为一种跨语言开发模式,通讯层是Hybrid架构首先应该考虑和设计的,往后所有的逻辑都是基于通讯层展开. Native(以Android为例)和H5通讯,基本原理: Android调用H5:通过webview类的loadUrl方法可以直接执行js代码,类似浏览器地址栏输入一段js一样的效果 webvi

图书简介:Spring Batch批处理框架

大数据时代批处理利器,国内首度原创解析Spring Batch框架. 内容简介: <Spring Batch 批处理框架>全面.系统地介绍了批处理框架Spring Batch,通过详尽的实战示例向读者展示了Spring Batch框架对大数据批处理的基本开发能力,并对框架的架构设计.源码做了特定的剖析:在帮助读者掌握Spring Batch框架基本功能.高级功能的同时,深入剖析了Spring Batch框架的设计原理,帮助读者可以游刃有余地掌握Spring Batch框架. <Sprin

Hybrid APP架构设计

通讯 作为一种跨语言开发模式,通讯层是Hybrid架构首先应该考虑和设计的,往后所有的逻辑都是基于通讯层展开. Native(以Android为例)和H5通讯,基本原理: Android调用H5:通过webview类的 loadUrl 方法可以直接执行js代码,类似浏览器地址栏输入一段js一样的效果 webview.loadUrl("javascript: alert('hello world')"); H5调用Android:webview可以拦截H5发起的任意url请求,webvi

基于堆的最大最小优先级队列的实现

最大堆能够在O(1)的时间内取得集合中的最大值,并且在集合中加入新元素的时候,能够以O(Logn)的时间将新的元素插入到堆中. 当取出最大的元素时,能够以O(Logn)的时间重新将堆整理成最大堆.最小堆同理. 最大优先级队列的应用实例:基于优先级的作业调度,在所有等待调度的作业中,选择具有最大优先级作业进行处理.同时一个新的作业也可以插入到队列里面去. 例如可以实现自己的基于优先级的多线程作业调度程序. 最小优先级队列的应用实例:可以实现一个基于时间的作业调度程序,时间最小的被优先选择进行事件通

Hybrid APP架构设计思路

原文:Hybrid APP架构设计思路 关于Hybrid模式开发app的好处,网络上已有很多文章阐述了,这里不展开. 本文将从以下几个方面阐述Hybrid app架构设计的一些经验和思考. 通讯 作为一种跨语言开发模式,通讯层是Hybrid架构首先应该考虑和设计的,往后所有的逻辑都是基于通讯层展开. Native(以Android为例)和H5通讯,基本原理: Android调用H5:通过webview类的loadUrl方法可以直接执行js代码,类似浏览器地址栏输入一段js一样的效果 webvie

面向对象第一次Coding总结暨感想

已经不是第一次敲Java了,真的应该感谢学院在大一暑期的时候开设了面向对象先导课程,让我好歹磕磕绊绊地过了编手,不至于在OO课来临直接过于难受.其实我跟JAVA有着很大的缘分,记得大一的时候,学院给我们开设了第二课堂,大部分同学为了给下学期的数据结构打好基础选择了C语言,偏偏我头铁,以为要把眼光放得长远选择了Java.结果可想而知,一点点编程基础没有的我在满是大佬的课堂疯狂划水,讲的东西一个字都听不懂,整个学期唯一的收获大概就是电脑上安装了Eclipse.暑期课程抢救了我,在安装了Eclipse