怎么样才能往TimerTask类里面传送变量值呢,附部分程序供各位高手品鉴
import   org.apache.commons.httpclient.*; 
 import   org.apache.commons.httpclient.methods.*; 
 import         java.util.Timer;             
 import         java.util.TimerTask; 
 import   java.io.*;      
 public   class   FormLoginDemo    
 {   
 	public   static   int   h=0; 
             public   static   void   main(String[]   args)   throws   Exception 
             {    
             	for(int   j=0;j <2;j++) 
             	{ 
             	timer.scheduleAtFixedRate((TimerTask)         new         MyTask(),         0,         JOB_INTERNAL); 
                            h=j; 
             	} 
             } 
 }     
 class   MyTask   extends   TimerTask       
 {                        
       public   void   run()       
       {   
                System.out.println(FormLoginDemo.h);  	 
       }      
 }   
 我的目的是想把主程序产生的h值传到所建立的线程里面去,每建立一个线程就传一个不同的值h+1给它, 
 但是上面的程序无法完成我的要求, 
 因为当第二个进程正在建立的时候,h值有可能已经不是1了,而是变成了2,此时线程再去读取h值,那么所取的这个值已经不是我所要的了, 
 即本来我要求的结果是: 
 0 
 1 
 而实际上即是 
 0 
 2   
 问下大家怎么样才能把特定的h值传到每个线程里面,需要什么构造方法   
------解决方案--------------------class MyTask extends TimerTask   
 {  
   private int i; 
   public MyTask(int i) 
   { 
      this.i = i; 
   } 
   public void run()   
   {   
      System.out.println(this.i);  	 
   }    
 }