num = OneThread.num;
         ^^^^^^^^^^^^^^^^^^^^如果现在num不是100,那么下面不是死循环是什么
      System.out.print("当前机器的时间:.............");
      while(num!=100)
         ^^^^^^^^^^^^^^^如果num不等于100,死循环;一旦取值后num不会改变
       {
        ct_start = new Date(); /*取当前机器的时间*/
        getTime = new SimpleDateFormat("HH:mm:ss"); /*设置时间格式*/
           getTime.setLenient(true);/*设置格式严格匹配*/
           ctime = getTime.format(ct_start);/*将时间按照格式严格匹配后转化为字符串*/
           System.out.print(ctime);     /*!*/
         }

解决方案 »

  1.   

    那个问题我改了,谢谢 zyg158(DD) 的提醒!
    但是我想程序实现这样的效果:
    程序进程显示:..............................(长度是变化的)
    当前机器时间:......................11:20:23(时间是变化的)
    都只显示一行!!
    这个怎么办呀?请指点一下!
      

  2.   

    你的TwoThread类中的num不是第一类中的num呀~~~它永远也达不到100
    所以是个死循环~~~
    搂住看看对不对>??
      

  3.   

    在System.out.println();//就可以了~~
    System.out.print("当前机器的时间:.............");
    但是怎么只让时间变我也不会~~~
    关注~~
    等待高手的帮忙吧~~~
      

  4.   

    在输出前 加个repaint() 试试 也许成吧
    你的程序里没写paint() 那paint就应该什么都不做
    而repaint是擦了后 再执行paint
    这只是我的猜想没有试过 你试试吧
      

  5.   

    不行的,不能用repaint(),它是针对其他对象,不是针对屏幕输出的,到底有什么办法没有呀?这个应该怎么才能实现呀?