文档详情

24李后浪实验五 多线程2李后浪实验五 多线程24李后浪实验五 多线程24李后浪实验五 多线程.doc

发布:2017-03-13约6.07千字共6页下载文档
文本预览下载声明
实验五 多线程 实验课程名:Java程序设计 专业班级: 12网工2班 学号: 201240420224 姓名: 李后浪 实验时间: 2014.6.6 实验地点: K4-307 指导教师: 冯 珊 一、实验目的和要求 ①掌握使用Thread的子类创建线程; ②学习使用Thread类创建线程; ③学习处理线程同步问题。 ? 二、实验内容 ?任务1 汉字打字练习。 实验要求: 编写一个Java应用程序,在主线程中再创建一个Frame类型的窗口,在该窗口中再创建1个线程giveWord。线程giveWord每隔2秒钟给出一个汉字,用户使用一种汉字输入法将该汉字输入到文本框中。 源代码: WordThread.java import java.awt.*; public class WordThread extends Thread { char word; int k=19968; Label com; WordThread(Label com) { =com; } public void run() { k=19968; while(true) { word=(char)k; com.setText(+word); try{ Thread.sleep(6000);//调用sleep方法使得线程中断6000豪秒 } catch(InterruptedException e){} k++; if(k=29968) k=19968; } } } ThreadFrame.java import java.awt.*; import java.awt.event.*; public class ThreadFrame extends Frame implements ActionListener { Label wordLabel; Button button; TextField inputText,scoreText; WordThread giveWord;//用WordThread声明一个giveWord对象 int score=0; ThreadFrame() { wordLabel=new Label( ,Label.CENTER); wordLabel.setFont(new Font(,Font.BOLD,72)); button=new Button(开始); inputText=new TextField(3); scoreText=new TextField(5); scoreText.setEditable(false); giveWord=new WordThread(wordLabel);//创建giveWord,将wordLabel传递给WordThread构造方法的参数 button.addActionListener(this); inputText.addActionListener(this); add(button,BorderLayout.NORTH); add(wordLabel,BorderLayout.CENTER); Panel southP=new Panel(); southP.add(new Label(输入标签所显示的汉字后回车:)); southP.add(inputText); southP.add(scoreText); add(southP,BorderLayout.SOUTH); setBounds(100,100,350,180); setVisible(true); validate(); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); }
显示全部
相似文档