import java.util.Date;
import java.lang.Thread;
public class ThreadTimer { public static void main(String[] args) {
MyThread Thread = new MyThread();
Thread.start();
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Thread.interrupt();
}
}
class MyThread extends Thread{
public void run(){
System.out.print("时间为"+new Date()+" ");
while(true){
try {
MyThread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
return;
}
}
}
}
提示class MyThread extends Thread{
中MyThread 已经被定义,还是找不到原因。我想要的结果是每1s显示一次时间,5s时结束。此外运行结果为何输入的只有时间而没有我加的“时间为”
import java.lang.Thread;
public class ThreadTimer { public static void main(String[] args) {
MyThread Thread = new MyThread();
Thread.start();
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Thread.interrupt();
}
}
class MyThread extends Thread{
public void run(){
System.out.print("时间为"+new Date()+" ");
while(true){
try {
MyThread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
return;
}
}
}
}
提示class MyThread extends Thread{
中MyThread 已经被定义,还是找不到原因。我想要的结果是每1s显示一次时间,5s时结束。此外运行结果为何输入的只有时间而没有我加的“时间为”
解决方案 »
- 对象的序列化(serialization)类是面向流的,应如何将对象写入到随机存取文件中?
- 这个异常是什么原因引起的?求助!
- 请问:java程序中,在同一个包中的文件可相互调用,那不同包中的文件可不可以相互调用,而不用import呀
- 欢迎来分享我们的项目和与我们分享您的项目的朋友吗!!!!!!!!!!!!!!
- 我想问下java.util.Random这个函数在哪个文件里啊
- 初学者的问题!
- a difficult problem for me, maybe not for you. ???
- 请问java如何把一个浮点数比如12.34的二进制写入一个二进制文件?
- 问一个有关applet的问题
- 关于ConcurrentHashMap的一些疑惑
- JTree节点渲染器的问题
- 请问构造方法有返回值吗?
import java.lang.Thread;
public class ThreadTimer {public static void main(String[] args) {
MyThread Thread = new MyThread();
Thread.start();
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Thread.interrupt();
}static class MyThread extends Thread{
public void run(){
System.out.print("时间为"+new Date()+" ");
while(true){
try {
MyThread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
return;
}}
}
}}
至于只打印了一次时间,是
public void run() {
System.out.print("时间为" + new Date() + " ");
while (true) {
try {
MyThread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
return;
}
}
}
抛异常了,然后又return;那肯定只打印一次了。异常处理还是要的
public void run() {
for (int i = 0; i < 5; i++) {
try {
System.out.println("时间为"+new Date()+" ");
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
class MyThread extends Thread
{
public void run()
{
//System.out.print("时间为"+new Date()+" ");
while(true)
{
System.out.print("时间为"+new Date()+" ");//放在循环里面.
try
{
MyThread.sleep(1000);
}
catch (InterruptedException e)
{
// TODO Auto-generated catch block
return;
} }
}
}
另外尽量把对象名的首字母小写,比如:MyThread Thread = new MyThread();最好改成:MyThread thread = new MyThread();
这个原因是因为你的System.out.println()写在while循环体外了吧!
public void run() {
//System.out.print("时间为" + new Date() + " "); // 这是循环体之外
while (true) {
System.out.print("时间为" + new Date() + " "); // 建议应该写在这里
try {
MyThread.sleep(1000);
} catch (InterruptedException e) {
return;
}
}
}