下面的程序输出结果为
0
2
1
当在输出2的时候,main已经结束了。但是程序依然执行,输出了1
是因为main函数只是程序的入口,是一个程序中多条线程的其中一条。独立的线程间是互相不影响的,因此即便main线程结束了,其他线程依然会照常运行。
class test extends Thread{
@Override
public void run() {
try {
Threadsleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
eprintStackTrace();
}
Systemoutprintln(1);
superrun();
}
}
public class Test{
public static void main(String[] args) {
//new Server();
Systemoutprintln(0);
new test()start();
Systemoutprintln(2);
}
}
import javaxswingJOptionPane;
class tt {
boolean boo;
void start() {
int i = 0;
boo = true;
while (boo) {
try {
i++;
judge(i);// 判断是否结束运行
Threadsleep(1000);
} catch (InterruptedException e) {
}
Systemoutprintln(i);
}
}
void restart() {
start();
}
//每执行5次判断是否结束执行
void judge(int i) {
if (i % 5 == 0) {
int flag = JOptionPaneshowConfirmDialog(null, "确定要停止");
if (flag == 0) {
boo = false;
}
}
}
public static void main(String args[]) {
tt t = new tt();
tstart();
// 此处写一个方法停止start的执行
trestart();// 重新执行start()
}
}
已经给楼主调试并成功运行!
祝楼主早日成功哈!
如果觉得不好也不要见怪噢。。。
备注:接毕业设计,价钱面议!
以上就是关于java main结束后还会执行其他代码吗 为什么求高手指点,要有文字说明,详细一些。全部的内容,包括:java main结束后还会执行其他代码吗 为什么求高手指点,要有文字说明,详细一些。、java 停止程序执行、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)