public class Thread2 extends Thread
{
public Thread2(ThreadGroup tg,String name)
{
super(tg,name);
}
public void run()
{
   try
{
System.out.println(getName()+" slept ");
this.sleep(1000);   //睡眠一秒钟
}
    catch(InterruptedException e)
{
    System.out.println(e.getMessage());
}
    System.out.print(getName()+" ended! ");
}
public static void main(String args[])
{
    ThreadGroup tg1=new ThreadGroup("tgl");  //创建一个线程组
    new Thread2(tg1,"A").start();
    new Thread2(tg1,"B").start(); ThreadGroup tg2=new ThreadGroup("tg2");
new Thread2(tg2,"C").start();
new Thread2(tg2,"D").start();
Thread curt=Thread.currentThread();  //返回当前活动线程
System.out.println("currentThread="+curt.getName());  
System.out.println("getPriority="+curt.getPriority());//优先级
System.out.println("activeCount="+Thread.activeCount());
Thread  ta[]=new Thread[10] ;
Thread.enumerate(ta);    //将当前活动线程复制到ta数组中
System.out.println("Group-Name  isAlive()");
for(int i=0;i<Thread.activeCount();i++) //1111111
{
System.out.println("***"+i+"***"+Thread.activeCount()+"***") ;
              /////22222
System.out.println(ta[i].getThreadGroup().getName()
 +"一"+ta[i].getName()+" "+ta[i].isAlive()) ;
}
}
}为什么在///// 2222的下面一句在执行的时候有异常?
如果把 //1111111这句中的 Thread.activeCount()改为Thread.activeCount()-1后才不会越界?
如果不减1就会出现异常,但activeCount()返回值又为:6,多出那个线程是什么?哪去了?为什么
经过Thread.enumerate(ta);后没有添加到 ta 数组中去?
谢谢!