.
}
public void start() { }
public void run() { }
int x = 0;
Graphics g = getGraphics(); while (true) { }
try { }
g.clearRect(0, 0, getWidth(), getHeight()); g.drawString(str, x, 30); x += 2;
if (x >= getWidth())
x = 0;
Thread.sleep(time); e.printStackTrace(); } catch (Exception e) { thread.start();
9、编写一个Java程序实现多线程,在线程中输出线程的名字,隔300毫秒输出一次,共输出20次。(p202,例8-1)
可编辑
.
// programme name TestThread; // 声明一个子线程类Threaddemo; class ThreadDemo extends Thread { public ThreadDemo(String str) { super(str); }
public void run() { for(int i=0;i<20;i++){
System.out.print(“ ”+this.getName()); Try {
Sleep(300);
}catch(InterruptedException e){ System.out.println(e.getMessage()); Return; } }
System.out.println(“ /end”); } }
public class TestThread {
public static void main( String args[] ) {
ThreadDemo thread1=new ThreadDemo(“T1”); ThreadDemo thread2=new ThreadDemo(“T2”); ThreadDemo thread3=new ThreadDemo(“T3”); thread1.start(); thread2.start(); thread3.start(); } }
10. 编写程序,在屏幕上显示带标题的窗口,并添加一个按钮。当用户单击按钮时,结束程序。
可编辑
.
// Programme Name ButtonEventDemo.java import javax.swing.*; import java.awt.event.*;
public class ButtonEventDemo extends JPanel implements ActionListener{
protected JButton b1; public ButtonEventDemo() {
//声明一个按钮对象 //构造方法
ImageIcon ButtonIcon = new ImageIcon(\ //创建按钮
的图标对象
b1 = new JButton(\退出按钮\
//生成按钮对象
b1.setMnemonic(KeyEvent.VK_E); //设置b1的助记符是Alt+E
b1.setToolTipText(\这是退出按钮。\// 设置按钮提示条 this.add(b1); //往面板对象中加载按钮
b1.addActionListener(this); //本类对象注册为按钮的事件监听器 }
public void actionPerformed(ActionEvent e){ //按钮事件响应方法
System.exit(0); //按b1则退出主程序 }
private static void createGUI() { //创建窗体
JFrame.setDefaultLookAndFeelDecorated(true); //设置java隐含观感 JFrame frame = new JFrame(\按钮测试\生成应用程序主窗体
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置关闭时隐含操作
可编辑
.
ButtonEventDemo CPane = new ButtonEventDemo(); //生成主类对象--面板
CPane.setOpaque(true); //面板要求不透明
frame.setContentPane(CPane); //设置主类对象为主窗体的内容面板 frame.pack(); //主窗体紧缩显示
frame.setVisible(true); //设置主窗体可见 }
public static void main(String[] args) { //将createGUI()列入线程 javax.swing.SwingUtilities.invokeLater(new Runnable() { public void run() { createGUI(); } }); } }
11. 利用线程方法编写JApplet程序,实现在浏览器端实时动态显示本地系统时钟 // Programme Name Watch.java import java.applet.Applet; import java.awt.*;
import java.text.DateFormat; import java.util.*;
public class Watch extends Applet { public void paint(Graphics g) { Date d= new Date(); DateFormat
ldf
=
DateFormat.getDateTimeInstance(DateFormat.LONG,
可编辑