java的一个线程问题,请高手指教

来源:百度知道 编辑:UC知道 时间:2024/05/31 18:21:58
这是一个关于线程的程序 在编译时编译器告诉有三个错误 说不能识别resume(),suppend(),sleep()三个方法 请高手告诉我为什么 谢谢!
//<APPLET code = Thread width = 300 height = 250></APPLET>
import java.awt.*;
import java.applet.*;
public class Thread extends Applet
{
private Counter [] c = new Counter[3];
private TextField [] t = new TextField[3];

public void inti()
{
for(int i = 0; i < 3; i++)
{
t[i] = new TextField(5);
add(t[i]);
c[i] = new Counter(t[i]);
c[i].start();
}
}

public void start()
{
if(c[0] == null)
{
c[0] = new Counter(t[0]);
c[0].start();
}
c[1].resume();
}

public void stop()
{
if(c[0] != null)
{
c[0].stop();
c[0] = null;
}
c[1].suspend();
}
}

class Counter extends Thread
{
private TextField theField;
public Counter(T

没有为类型 Counter 定义方法 resume()
没有为类型 Counter 定义方法 suspend()

因为你继承的 Thread 是你自己写的类
不是 java.lang.Thread;

把你自己的 Thread 类名改一下!
强烈建议你不要和 java 类库中的类名相同!

这样就可以了

import java.awt.*;
import java.applet.*;
public class TestThread extends Applet
{
private Counter [] c = new Counter[3];
private TextField [] t = new TextField[3];

public void inti()
{
for(int i = 0; i < 3; i++)
{
t[i] = new TextField(5);
add(t[i]);
c[i] = new Counter(t[i]);
c[i].start();
}
}

public void start()
{
if(c[0] == null)
{
c[0] = new Counter(t[0]);
c[0].start();
}
c[1].resume();
}

public void stop()
{
if(c[0] != null)
{
c[0].stop();
c[0] = null;
}
c[1].suspend();
}
}

class Counter extends Thread
{
private TextField theFiel